SQL语句书写时易出现的格式错误

SQL语句书写时易出现的格式错误

一、在java中使用

  java中使用数据库,经常要写SQL语句,但是经常会报“com.microsoft.sqlserver.jdbc.SQLServerException: 关键字 'user' 附近有语法错误”。这个错误是由于SQL语句书写时引号使用不当造成的,只要稍加修改就行了。另外,无论在java或者SSMS中使用,user前后都可以随意加空格,不会报错 。

table名格式错误样例:

1、String query = "create table user (id int,name VARCHAR(10),age int)"; //user附近没有任何引号

2、String query = "create table ‘user’ (id int,name VARCHAR(10),age int)"; //把user用单引号括起来

3、String query = "create table "user" (id int,name VARCHAR(10),age int)"; //把user用双引号括起来,这个太低级了,Eclipse会报错

正确的使用方法:

String query = "create table \"user5\" (id int,name VARCHAR(10),age int)"; //user用双引号括起来,双引号前面要加转义字符"\"

 

Insert语句中,数据要用单引号括起来:

String insert_stmt1 = "INSERT INTO \"user\" VALUES(1,'旭哥',10)";//SQL语句

 

二、在sql server 2008 r2 的SSMS中使用

table名格式错误样例:

1、create table ‘user’ (id int,name VARCHAR(10),age int) //把user用单引号括起来

2、create table \"user5\" (id int,name VARCHAR(10),age int) //user用双引号括起来,双引号前面要加转义字符"\"

3、create table user (id int,name VARCHAR(10),age int) //user附近没有任何引号

正确的使用方法:

create table "user" (id int,name VARCHAR(10),age int)//把user用双引号括起来 

 

三、在SQL语句中,一般数据库名、table名、列名用双引号括起来,char类的数据用单引号括起来,int类的数据直接书写,不用引号,如

insert into "user" values(1,'d',21)

posted on 2014-04-13 10:27  不会熬夜的程序员  阅读(1008)  评论(0编辑  收藏  举报

导航