SQL Error: 156, SQLState: S0001

     由于偷懒,用MyEclipse连接ms sqlServer2008,然后反转生成了一些Entity,结果自动生成的Entity的注解@Table(name = "LineItem", schema = "dbo", catalog = "Order"),这样的话,生成的sql语句会带上Order.dbo.LineItem,这个时候数据库会报SQL Error: 156, SQLState: S0001,说用了ms sqlServer2008数据库的关键字(order by),这个时候讲注解@Table(name = "LineItem", schema = "dbo", catalog = "Order")改成@Table(name = "LineItem")即可解决。

另:
     1.ms sqlServer区分大小写
     2.ms sqlServer允许字段名中间有空格,但是自动生成的映射文件里会和数据库保持一致,而java里生成的sql会保留,所以这个也会引起不必要的麻烦,尽量不要允许字段中间空格。

猜你喜欢

转载自bawking.iteye.com/blog/1047068