1 / 4
文档名称:

SQL编程规范.doc

格式:doc   大小:57KB   页数:4页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

SQL编程规范.doc

上传人:1818311**** 2020/3/17 文件大小:57 KB

下载得到文件列表

SQL编程规范.doc

相关文档

文档介绍

文档介绍:SQL编程规范一、概述本手册侧重于代码编写过程中SQL语句的编写规范问题,内容涉及书写风格、性能优化、多数据适配等方面。文档中用★标示的内容为必须遵守的条例,其余的可视为建议。二、书写风格SQL语句全部使用小写。★引用字符时用单引号。如:updatetestablesetidcol=’abcd’。★连接符或运算符or、in、and、=、<=、>=,+,-等前后加上一个空格。严禁使用select*…….形式的语句,必须指出select的具体字段,即selectcol1,col2,…fromtableawhere….★严禁使用insertintotablevalues(?,?,?),必须指出具体要赋值的字段,即insertintotablea(col1,col2,…)values(?,?,…)★SQL语句包含多表连接时,建议对每个表命名别名,对每个字段的使用都要带上表别名,,,,=。例如在where子句中numeric型和int型的列的比较或相加。★读取是指通过JDBC读到的数据格式,保存是指保存在VO中的数据格式,插入或者更新是指insert或者update语句中的数据格式。整型字段:读取时根据字段设置保存为Integer或者Long。数字型字段:读取为BigDecimal,并保存为UFDouble,插入或者更新时为BigDecimal。字符型字段:读取为String,并保存为String,插入或者更新为String。布尔型字段:读取为String(‘Y’OR‘N’),并保存为UFBoolean,插入或者更新时为String(‘Y’OR‘N’)。时间字段:读取为String,并保存为UFDateTime,插入或者更新时的时间格式由中间件统一处理,有单独需求的要申请后才能决定。在子查询中前后必须加上括号,selectcol1,col2fromtableawherecol3in(selectcol4fromtablebwherecol4>0)★避免在where使用'1=1','1=2'这种表达式作为部分条件,如selectcol1,col2fromtableawhere1=1andcol1>0。禁止使用视图。★三、性能优化尽量使用prepareStatement,利用预处理功能。在进行多条记录的增加、修改、删除时,建议使用批处理功能,批处理的次数以整个SQL语句不超过相应数据库的SQL语句大小的限制为准。建议每条SQL语句中in中的元素个数在500以下,如果个数超过时,应拆分为多条SQL语句。禁止使用xxin(‘’,’’….)orxxin(‘’,’’,’’)。★禁止使用or超过500,如xx=’123’orxx=’456’。★尽量不使用外连接。禁止使用notin语句,建议用notexist。★禁止使用Union,如果有业务需要,请拆分为两个查询。★禁止在一条SQL语句中使用3层以上的嵌套查询,如果有,请考虑使用临时表或中间结果集。★尽量避免在一条SQL语句中从>=4个表中同时取数,对于仅是作为过滤条件关联,但不涉及取数的表,不参与表个数计算;如果必须关联4个或4个以上表,尽量采用子查询的方式。尽量避免使用orderby和