mysql关键字key的转义

来源:互联网 发布:全国居民小区数据库 编辑:程序博客网 时间:2024/04/27 23:12


转载:http://solodu.iteye.com/blog/520419


nsert into app(name,created,key,secret,masterSecret) values ('aa',null,null,null,null);

因为这里的key字段是mysql的关键字,所以一直插不进去。

修改如下:在key的头上加上两点(反引号,它在键盘的~这个键上)。即可搞定

 

sql建表如下:

Java代码  收藏代码
  1. CREATE TABLE `app` (  
  2.   `id` bigint(20) NOT NULL auto_increment,  
  3.   `name` varchar(50default NULL,  
  4.   `created` datetime default NULL,  
  5.   `key` varchar(100default NULL,  
  6.   `secret` varchar(100default NULL,  
  7.   `masterSecret` varchar(100default NULL,  
  8.   PRIMARY KEY  (`id`)  
  9. ) ENGINE=InnoDB DEFAULT CHARSET=latin1;  

 

1. 我这样写:insert into app (name,key,secret) values ('aa','bb',null); 结果报错的,就因为key是关键字。

2. 正确写:insert into app (name,`key`,secret) values ('aa','bb',null);结果搞定。

 

另外说明下:虽然status和这些关键字insert into values key等等的颜色一样,但是它不是关键字。

Java代码  收藏代码
  1. insert into app (name,`key`,secret,status) values ('aa','bb',null,2);  

这样可以插成功的。 

 

 

Java代码  收藏代码
  1. 上面都是针对mysql的关键字的。  
  2. 如果是sqlserver的话,关键字是用它[] --> 中括号 ,来代替mysql里面的``。  

 



原创粉丝点击