随笔-30  评论-123  文章-0  trackbacks-0

本手册是用友NC开发过程中SQL使用的经验总结和强制规范,希望对大家的SQL语句的书写和数据库的开发能够给与一定的借鉴。

一、概述

本手册侧重于
SQL 开发书写过程中的规范问题。尽可能的在总结以往开发过程中形成的 SQL 开发方法,并针对在软件维护、 SQL 语句跨多数据库、操作系统适配中出现问题的解决办法的基础上,提出的一个 SQL 开发规范。

二、书写风格

1. SQL 语句全部使用小写,除在 SQL 中用引号括起来的常量外,请使用单字节。

2.  引用字符时用单引号。如: update testable set idcol=’abcd’

3. 
尽量使用 prepareStatement ,利用预处理功能。少用 createStatement

4. 在 拼装 SQL 的时候,使用 StringBuffer, 不要用 String+String
的方式。

5.  严禁使用 select * ……. 形式的语句,要指出 select
的具体字段。

6.  严禁使用 insert into table value(?????) ,要指出具体要赋值的字段。

7. 
SQL
语句包含多表连接时,必须对每个表命名别名,对每个字段的使用都要带上别名。

8. SQL 语句含有运算符时,运算符需与其他字符串用空格区分 ( 或者用括号分开 ) 。否则容易导致以下类似问题。在语句 select a–b from table 中, a b 均为变量。拼写该语句时,如果 a=6 b= -3 ,则语句变为 select 6--3 from table -- 变为 Sql
的注释,语句报错。

9. 避免隐含的类型转换。例如在 where 子句中 numeric 型和 int 型的列的比较或相加。

10.  读取是指通过 JDBC 读到的数据格式,保存是指保存在 VO 中的数据格式,插入或者更新是指 insert 或者 update 语句中的数据格式。
    a)   整型字段:读取时根据字段设置保存为 Integer 或者 Long

    b)   数字型字段:读取为 BigDecimal ,并保存为 UFDouble ,插入或者更新时为 BigDecimal

    c)   字符型字段:读取为 String ,并保存为 String ,插入或者更新为 String

    d)   布尔型字段:读取为 String(‘Y’ OR ‘N’) ,并保存为 UFBoolean ,插入或者更新时为 String(‘Y’ OR ‘N’)

    e)   时间字段:读取为 String ,并保存为 UFDateTime
,插入或者更新时的时间格式由中间件统一处理,有单独需求的要申请后才能决定。
  
11. 
尽量不使用右连接。

12.  在使用 UNION UNION  ALL 的前后的两个 SQL 需要加 ( )


posted on 2006-04-23 00:22 学二的猫 阅读(2158) 评论(3)  编辑  收藏 所属分类: 数据库技术
SQL开发手册(1)" trackback:ping="http://www.blogjava.net/hsith/services/trackbacks/42562.aspx" /> -->

评论:
# re: NC-->SQL开发手册(1) 2006-04-23 02:20 | 寒晴天
不好意思,什么是NC????  回复  更多评论
  
# re: NC-->SQL开发手册(1) 2006-04-23 02:48 | Yu Xin
NC是用友软件的一款高端的集团级的ERP产品,也是目前国内唯一能与国外厂商相抗衡的高端ERP产品。NC是New Century的缩写。NC目前版本为V31SP1,今年五月底会发布V35,九月底将隆重推出NC5.0。想了解更多有关NC的资料,请访问:http://www.ufsoft.com.cn/2004product/product1.asp  回复  更多评论
  
# re: NC-->SQL开发手册(1) 2006-04-24 11:29 | 黄金时代已过
不错!
有更多的细节吗?
比如说表的命名规则,界面规范,如何跨数据库,使用了哪些外部包
  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: