最近开发遇到一个很奇葩的问题,简单做一下笔记

select * from Add ...

以上SQL语句会报错。

原因Add是表名,SQL语句保留字中又有Add

解决方法:

select * from [Add] ...

把与保留字相同的表名或者字段名用[ ]括起来,这样就能把SQL语句保留字区分开来。

***知识点***

顺便总结一下SQL语句的保留字



ADD 
ALL 
Alphanumeric - 参阅 TEXT 
ALTER 
And 
ANY 
AS 
ASC 
AUTOINCREMENT - 参阅 COUNTER 
Avg 

B-C 

Between 
BINARY 
BIT 
BOOLEAN - 参阅 BIT 
BY 
BYTE 
CHAR,CHARACTER - 参阅 TEXT 
COLUMN 
CONSTRAINT 
Count 
COUNTER 
CREATE 
CURRENCY 



DATABASE 
DATE - 参阅 DATETIME 
DATETIME 
DELETE 
DESC 
DISALLOW 
DISTINCT 
DISTINCTROW 
DOUBLE 
DROP

BIT

LONG 
LONGBINARY 
LONGTEXT 
Max 
MEMO - 参阅 LONGTEXT 
Min 
Mod 
MONEY - 参阅 CURRENCY 

N-P 

Not 
NULL 
NUMBER - 参阅 DOUBLE 
NUMERIC - 参阅 DOUBLE 
OLEOBJECT - 参阅 LONGBINARY 
On 
OPTION 
Or 
ORDER 
Outer* 
OWNERACCESS 
PARAMETERS 
PERCENT 
PIVOT 
PRIMARY 
PROCEDURE 

Q-S 

REAL - 参阅 SINGLE 
REFERENCES 
RIGHT 
SELECT 
SET 
SHORT 
SINGLE 
SMALLINT - 参阅 SHORT 
SOME 
StDev 
StDevP 
STRING - 参阅 TEXT 
Sum 

T-Z 

TABLE 
TableID* 
TEXT 
TIME - 参阅 DATETIME 
TIMESTAMP - 参阅 DATETIME 
TOP 
TRANSFORM 
UNION 
UNIQUE 
UPDATE 
VALUE 
VALUES 
Var 
VARBINARY - 参阅 BINARY 
VARCHAR - 参阅 TEXT 
VarP 
WHERE 
WITH 
Xor 
YESNO - 参阅 BIT

E-H 

Eqv 
EXISTS 
FLOAT,FLOAT8 - 参阅 DOUBLE 
FLOAT4 - 参阅 SINGLE 
FOREIGN 
FROM 
GENERAL - 参阅 LONGBINARY 
GROUP 
GUID 
HAVING 



IEEEDOUBLE - 参阅 DOUBLE 
IEEESINGLE - 参阅 SINGLE 
IGNORE 
Imp 
In 
IN 
INDEX 
INNER I 
NSERT 
INT,INTEGER,INTEGER4 - 参阅 LONG 
INTEGER1 - 参阅 BYTE 
INTEGER2 - 参阅 SHORT 
INTO 
Is 

J-M 

JOIN 
KEY 
LEFT 
Level* 
Like 
LOGICAL,LOGICAL1 - 参阅

SQL语句表名或者字段名和保留字冲突解决方法的更多相关文章

  1. SQL查询表,表的所有字段名,SQL查询表,表的所有字段名

    SQL查询表,表的所有字段名 2011-07-29 10:21:43|  分类: SQLServer |  标签:表  sql  字段   |举报 |字号 订阅   SQL查询表,表的所有字段名 SQ ...

  2. SQL添加表字段以及SQL查询表,表的所有字段名

    通用式: alter table [表名] add [字段名] 字段属性 default 缺省值 default 是可选参数 增加字段: alter table [表名] add 字段名 smalli ...

  3. sql语句用'in'执行多条语句时候,执行错误的解决方法

    一般报错是出现,无法将nvarchar类型转换为int类型 这是因为 SqlParameter  带参数  是不能用  , 分割的. 第一种解决方法就是  不用 SqlParameter  带参数的s ...

  4. [转]关于oracle sql语句查询时表名和字段名要加双引号的问题

    oracle初学者一般会遇到这个问题.   用navicat可视化创建了表,可是就是不能查到!   后来发现②语句可以查询到 ①select * from user; 但是,我们如果给user加上双引 ...

  5. SQL语句改动表名和字段名

    今天有个暂时任务,改动生产环境的数据库表名和字段名.曾经要改动表名字段名都是在开发环境.直接打开 SQL Server找到相应的表或字段重命名就OK啦,但是这是线上数据库,再想直接F2改动是不可能的啦 ...

  6. MyBatis构建sql时动态传入表名以及字段名

    今天项目需要用到动态表名,找到这一篇文章,亲测可用 用了mybatis很长一段时间了,但是感觉用的都是比较基本的功能,很多mybatis相对ibatis的新功能都没怎么用过.比如其内置的注解功能之类的 ...

  7. SQL Server 2008 R2——根据数据查找表名和字段名 根据脏数据定位表和字段

    =================================版权声明================================= 版权声明:原创文章 谢绝转载  请通过右侧公告中的“联系邮 ...

  8. SQL 查询所有表名、字段名、类型、长度、存储过程、视图

    -- 获得存储过程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.i ...

  9. sqlserver查询所有表名、字段名、类型、长度和存储过程、视图的创建语句

    -- 获得存储过程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.i ...

随机推荐

  1. AS下NDK开发(一)

    捣鼓了一天的NDK,总结下. Eclipse下开发ndk好像挺麻烦的样子,看书上要下载Cygwin,eclipse还要下载插件CDT..而在AS上就方便多啦.下载android ndk.安装,配置环境 ...

  2. php的字符串转2进制函数

    <?php $file1 = '16.jpg'; $file2 = 'test.txt'; $file3 = '47.jpg'; $size = filesize($file1); echo ' ...

  3. abstract virtaul override new 及多态

    abstract abstract 修饰符可以和类.方法.属性.索引器及事件一起使用.在类声明中使用 abstract 修饰符以指示某个类只能是其他类的基类.标记为抽象或包含在抽象类中的成员必须通过从 ...

  4. WC2016游记

    出发的时候,长沙忽然就出了太阳,明媚而和煦. [day0 25] 噫吁嚱,危乎高哉!蜀道之难,难于上青天! 总之本来上午已经准备好9:50的飞机…然后就在一次次的手机查询中变成了5点多…然后也不是直飞 ...

  5. 《InsideUE4》UObject(三)类型系统设定和结构

    垃圾分类,从我做起! 引言 上篇我们谈到了为何设计一个Object系统要从类型系统开始做起,并探讨了C#的实现,以及C++中各种方案的对比,最后得到的结论是UE采用UHT的方式搜集并生成反射所需代码. ...

  6. java的内部类及匿名内部类

    在Java中,允许一个类的定义位于另一个类的内部,前者称为内部类 内部类和外层封装它的类之间存在逻辑上的所属关系 Inner class一般用在定义它的类或语句块之内,在外部引用它时必须给出完整的名称 ...

  7. Delphi从内存流中判断图片格式(好多相关文章)

    废话不多说了,利用内存流来判断文件的格式,其实判断文件的前几个字节就可以简单的判断这个文件是什么类型的文件,例如jpg文件 是 FFD8 (从低位到高位就要反过来 D8FF 下面都是一样)BMP文件  ...

  8. BOOST::Signals2

    /* Andy is going to hold a concert while the time is not decided. Eric is a fans of Andy who doesn't ...

  9. 常用的String原型

    对于常用的字符串原型的举例 在字符串末尾追加字符串 String.prototype.append = function (str) { return this.concat(str);} 删除指定索 ...

  10. js字符串String常用方法

    1.   charAt()         返回指定位置的字符. str.charAt(index) index 为必须参数,类型为number(0到str.length-1之间,否则该方法返回 空串 ...