SQL语句规范的写法【199cloud-艾娜】
-
语句关键字应全部使用小写。
-
引用字符时应使用单引号。如:update testable set idcol=’abcd’。
-
连接符或运算符or、in、and、=、<=、>=, +,- 等前后宜加上一个空格。否则容易导致以下类似问题。例如在语句select a–b from table中,a,b均为变量,拼写该语句时,如果a = 6,b = -3,则语句变为select 6–3 from table。–被视为SQL的注释,结果语句报错。
-
不得使用“select * from …”语法,必须标明字段名。即select col1, col2,… from tablea where …
-
严禁使用“insert into table_name values (?,?,……)”语法,统一使用“insert into table_name (col1,col2,……) values (?,?,……)”。
-
SQL语句包含多表连接时,必须加上表的别名,对每个字段的使用都要带上表别名。即 select a.col1, a.col2, b.col3 from tablea a, tableb b where a.col4=b.col5
-
应避免显式或隐含的类型转换。例如在where子句中numeric型和int型的列的比较。
-
在子查询中前后必须加上括号。select col1, col2 from tablea where col3 in ( select col4 from tableb where col4>0)
-
执行SQL时一次应只执行一条,如果多条语句则应分开执行,但必须保持在一个事务中。不得一次执行通过分号等分开的多条语句,这样处理不清晰。
-
如果能采用or代替,则不宜使用in 语句。in语句中的元素不得超过500个,如果超过,则应拆分为多条SQL语句。严禁使用xx in(‘’,’’….) or xx in(‘’,’’,’’)。
-
or连接条件不得超过 500,超过时应拆分为多条语句。