Chinaunix首页 | 论坛 | 博客
  • 博客访问: 472238
  • 博文数量: 117
  • 博客积分: 3195
  • 博客等级: 中校
  • 技术积分: 1156
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-04 01:44
文章分类

全部博文(117)

文章存档

2012年(5)

2011年(5)

2010年(46)

2009年(61)

我的朋友

分类: Mysql/postgreSQL

2012-03-04 14:48:34

1.从‘#’字符从行尾。

2.从‘-- ’序列到行尾。请注意‘-- (双破折号)注释风格要求2个破折号后面至少跟一个空格符(例如空格、tab、换行符等等)。该语法与标准SQL注释语法稍有不同,后者将在1.8.5.7, “‘--’作为注释起始标记”中讨论。

3.从/*序列到后面的*/序列。结束序列不一定在同一行中,因此该语法允许注释跨越多行。

 

第2个说明:

之所以要求使用空格,是为了防止与自动生成SQL查询有关的问题,它采用了类似下面的代码,其中,自动为“!payment!”插入“payment”的值:

UPDATE account SET credit=credit-!payment!

考虑一下,如果“payment”的值为负数如“-1”时会出现什么情况:

UPDATE account SET credit=credit--1

在SQL中“credit--1是合法的表达式,但是,如果--1被解释为注释开始,部分表达式将被舍弃。其结果是,表达式的意义与预期的意义完全不同。

UPDATE account SET credit=credit

该语句不会对值作任何更改!这表明,允许注释以“--”开始会产生严重后果。

阅读(5118) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~