电信计费稽核系统编码规范.docx
- 文档编号:11006724
- 上传时间:2023-02-24
- 格式:DOCX
- 页数:14
- 大小:20.69KB
电信计费稽核系统编码规范.docx
《电信计费稽核系统编码规范.docx》由会员分享,可在线阅读,更多相关《电信计费稽核系统编码规范.docx(14页珍藏版)》请在冰豆网上搜索。
电信计费稽核系统编码规范
计费稽核管理系统
编码规范说明书
计费帐务中心
2007-8-8
编码规范说明书
数据库编码规范
设计概要
设计环境
ORACLE9I
数据库
ORACLE9i
操作系统
SUSELINUX7.1以上版本,显示图形操作界面;RedHat9以上版本
CPU
PIII1.7G以上
内存
512M以上
硬盘空间
5GB以上的剩余空间,如要建立较多的、大型的数据库需要更多的硬盘空间
设计使用工具
a) 使用PowerDesigner做为数据库的设计工具,要求为主要字段做详尽说明。
b) 通过PowerDesigner定制word格式报表,并导出word文档,作为数据字典保存,格式可参看附件1。
(PowerDesignerv10才具有定制导出word格式报表的功能)
c) 编写数据库建数据库、建数据库对象、初始化数据脚本文件
设计原则
a) 采用多数据文件
b) 禁止使用过大的数据文件,unix系统不大于2GB,window系统不超过500MB
c) oracle数据库中必须将索引建立在索引表空间里。
d) 基本信息表在建立时就分配足够的存储空间,禁止其自动扩展功能
e) 大文本字列、blob列要独立出一张表,此表只有id和blob(或大文本)列
设计的更新
a) 在设计阶段,由数据库管理员或指定的项目组其一成员进行维护。
b) 运行阶段,由数据库管理员进行维护。
c) 如对表结构进行修改,应先在PowerDesigner中进行修改,再重新导出WORD文档,最后在数据库中进行修改。
如果修改的是数据库字典表,必须由数据库管理员进行。
d) 使用PowerDesigner生成SQL代码,禁止由PowerDesigner直接连数据库进行数据库操作
e) 修改数据库要通过SQL,禁止其它方式对数据进行修改
f) 修改数据库的SQL要添加说明后保存备查
命名总体原则
Ø 设定的前缀一律用小写字母
Ø 标识名称命名全部小写
Ø 整个命名的全长不得超过30个字母
Ø 全部使用字母和下划线‘_’,不能使用中文和其他字符,有特别情况允许使用末尾数字编号。
例如:
t_Finace1,t_Finace2...
Ø 命名名称来自于业务,全部采用英文单词
Ø 英文单词过长可以采用通用的缩写,尽量表达出业务的含义
Ø 如需要两个以上的英文单词做标识名称,单词之间要用下划线‘_’连接
Ø 名称全是由名词组成的,名词由大范围到小范围排序取名
Ø 完成某功能的名称,如函数和过程,以动宾形式取名
命名规范(逻辑对象)
数据库结构命名
a) 数据库命名
数据库的命名要求使用与数据库意义相关联的英文字母,并且以“db_”打头,
即db_<业务系统名称>。
例如:
chinacare数据库的命名为db_ccnet;
客户资料数据库的命名为db_Customer_Info。
b) 数据库日志设计命名
数据库日志的的命名以<数据库名>_<日志名>.log格式命名。
其中,<日志名>为有意义的数据库日志名称。
例如:
db_ccnet_logredo.log
c) 数据库配置设计命名
数据库配置设计方案是以文件形式保存的,其内容是关于特定数据库的配置项目的具体值。
数据库配置文件的命名以:
<数据库类型简写〉_<应用系统标志>_cfg.ini格式命名。
其中,数据库类型简写见附件2《数据库类型简写》,cfq表示该文件是数据库配置文件。
例如:
ORA_ccnet_cfg.ini
d) 数据库复制与存储设计命名
数据库复制与存储设计方案是以文件形式保存的,其内容是关于特定数据库之间的复制策略的具体细节。
数据库复制与存储设计文件的命名以:
<数据库类型简写>_<应用系统标志>_rep.txt格式命名。
其中,数据库类型简写见附件2《数据库类型简写》,rep表示该文件是数据库复制与存储文件。
e) 数据库连接设计命名
数据库连接设计方案是以文件形式保存的,其内容是关于特定分布式数据库之间的连接设计的具体细节。
数据库连接设计文件的命名以:
<数据库类型简写>_<应用系统标志>_dbl.sql格式命名。
其中,数据库类型简写见附件2《数据库类型简写》,dbl表示该文件是数据库连接设计文件。
f) 表空间、数据文件命名(主要针对Oracle)
索引表空间:
表空间命名格式:
ts<系统标识>_i
数据库文件命名格式:
ts<系统标识>_i[n].dbf
临时表空间:
表空间命名格式:
ts<系统标识>_t
数据库文件命名格式:
ts<系统标识>_t[n].dbf
回滚表空间:
表空间命名格式:
ts<系统标识>_r
数据库文件命名格式:
ts<系统标识>_r[n].dbf
数据表空间:
表空间命名格式:
ts<系统标识>_d
数据库文件命名格式:
ts<系统标识>_d[n].dbf
注:
表空间名不超过8位,n可取00-99或0-9,根据系统数据量确定。
数据库对象命名
a) 表
表的命名必须以“t_”(Table缩写)开头,格式为:
t_[系统标识]_<数据表类型标识>_<表标识>。
其中,[]表示可选项,依据实际情况而增加;<表标识>要求与表意义相关联的英文字母,例如:
t_Customers。
数据表大致分为:
业务数据表、基本编码表、辅助编码表、系统信息表、累计数据表、结算数据表、决策数据表;
基本编码表用base标志
累计数据表用count标志
系统信息表用info标志 ...
例如:
t_trade_base_trade_code,t_trade_info_help ...
b) 字段/域
根据业务要求进行命名,不需设定固定的前缀。
c) 索引
针对数据库表中一个或多个字段建立的索引的命名格式应以“idx_”开头,索引列名间用_隔开,即为idx_ColumnName1_ColumnName2_…
其中,ColumnName1是数据库表中(第一个)索引字段的名称或名称简写;ColumnName2是数据库表中(第二个)索引字段的名称或名称简写;索引名的总长必需符合数据库的规定。
例:
idx_cert_number(表示在字段cert_number上创建索引)
d) 视图
视图的命名必须以“v_”(View缩写)开头,格式为:
v_<视图类型>_[系统标识]_<视图标识>。
其中,视图类型参见“表的分类说明”;[系统标识_]是可选项,依据情况而增加;<视图标识>应与视图意义相关联的英文字母。
例:
v_user_detail_info
e) 存储过程
存储过程的命名必须符合sp_[系统标识]_<存储过程标识>格式。
其中,sp表示是存储过程;[系统标识]为可选项,依据情况而增加;<存储过程标识>是与存储过程意义相关联的英文字母,例如:
USP_Query_Write_to_Disk。
例:
sp_check_user_auth(以动宾方式取名)
f) 触发器
触发器的的命名必须符合tr_<表名>_格式。
其中,tr表示是触发器;是与触发器意义相关联的英文字母。
例:
tr_user_info_iu(表示对user_info表进行插入、更新的触发器)
g) 函数
函数的命名必须符合fn_[系统标识]_<函数标识>格式。
其中,fn表示是函数,[系统标识]为可选项,依情况而定;<函数标识>是与函数意义相关联的英文字母。
例:
fn_create_id(以动宾方式取名)
h) 自定义数据类型
自定义数据类型的命名格式为:
ud_<自定义数据类型标识>_<数据类型>
i) Default(缺省)
Default(缺省)的命名格式一般为:
df_
例:
df_begin_date缺省开始日期‘20030101’
ifexists(select*fromsysobjectswheretype='D'andname='df_begin_date')
dropdefaultdbo.df_begin_date
go
createdefaultdf_begin_dateas'20030101'
go
j) Check、Constraint(约束)
约束的命名格式一般为:
ck_<表名>_
例:
ck_flag参见第8.1点实例,约束字段flag只能取字符‘0’到‘9’:
constraintck_flagCHECK(flagbetween'0’and'9’)
k) Rule(规则)
规则的命名格式一般为:
rl_
例:
rl_not_zero(定义一个不等于0的规则)
ifexists(select*fromsysobjectswheretype='R'andname='rl_not_zero')
dropruledbo.rl_not_zero
go
createrulerl_not_zeroas@i<>0
go
l) 主键
主键的命名格式为pk_<表名>_<主键标识>。
例:
pk_user_info_userid(表user_info以字段userid创建主键)
m) 外键
外键的命名格式为fk_<表名>_<主表名>_<外键标识>。
例:
fk_user_info_department_deptid(在表user_info的字段department_id上创建外键,参照主表department)
n) 同义词(ORACLE)
同义词的命名格式为:
sy_<同义词标识>
例:
sy_user_info(为所有权属于ben的表user_info的公共同义词)
脚本注释
存储过程或触发器
a) 每一个存储过程或触发器都要在最前面写注释,注释如下
/*
writer:
createdate:
ver:
Depiction:
remark:
*/
另外,过程中声明的重要变量要有注释,例如:
@iActionFlag int=0 /*0=>Checkout,1=>GetLatest,2=>UndoCheckOut*/
b) 如果只对存储过程或触发器进行部分修改时须添加以下注释:
/*rewriter:
add(rewriter):
date:
<格式:
YYYY-MM-DD> start1:
修改描述:
*/
/*原代码内容*/(修改时)
/*rewriter:
date:
<格式:
YYYY-MM-DD> end1:
*/
/*rewriter:
add(rewriter):
date:
<格式:
YYYY-MM-DD> start2:
*/
新代码内容
/*rewriter:
date:
<格式:
YYYY-MM-DD> end2:
*/
c) 如果对存储过程或触发器有较大的修改,可增加修改内容的注释。
/*LogId:
rewriter:
rewritedate:
<格式:
YYYY-MM-DD>
Depiction:
*/
自定义函数
a) 每一个自定义函数都要在其前面写注释,注释如下
/*
functionname:
xxxx
Depiction:
<对此函数的描述>
param(a,b)
a功能或描述....
b功能或描述
output:
x x=0表示..... x=1表示......
writer:
createdate:
<创建日期,格式:
YYYY-MM-DD>
ver:
remark:
*/
另外,函数中声明的重要变量要有注释,例如:
@iActionFlag int=0 /*0=>Checkout,1=>GetLatest,2=>UndoCheckOut*/
b) 如果只对函数进行部分修改时须添加以下注释:
/*rewriter:
add(rewriter):
date:
<格式:
YYYY-MM-DD> start1:
修改描述:
*/
/*原代码内容*/(修改时)
/*rewriter:
date:
<格式:
YYYY-MM-DD> end1:
*/
/*rewriter:
add(rewriter):
date:
<格式:
YYYY-MM-DD> start2:
*/
新代码内容
/*rewriter:
date:
<格式:
YYYY-MM-DD> end2:
*/
c) 如果对函数有较大的修改,可增加修改内容的注释。
/*Logid:
rewriter:
rewritedate:
<修改日期,格式:
YYYY-MM-DD>
Depiction:
*/
数据库操作原则
建立、删除、修改库表操作
Ø 在开发环境中,对于自己的库表可任意进行修改、删除操作;但需保留相应的建表语句和说明,与建表人建表时间。
添加、删除、修改表数据
Ø 在开发环境中,开发人员所开发模块独自使用的库表,可自由操作表中数据;
Ø 对其他模块关联的库表,应取得其他模块的开发人员同意后再执行操作;
Ø 系统的信息表、字典表的修改应向数据库的管理员提出操作需求,由数据库的管理员执行操作
Asp.Net控件编码规范
类型
前缀
示例
AdRotator
adrt
adrtTopAd
Button
btn
btnSubmit
Calendar
cal
calMettingDates
CheckBox
chk
chkBlue
CheckBoxList
chkl
chklFavColors
CompareValidator
valc
valcValidAge
CustomValidator
valx
valxDBCheck
DataGrid
dgrd
dgrdTitles
DataList
dlst
dlstTitles
DropDownList
drop
dropCountries
HyperLink
lnk
lnkDetails
Image
img
imgAuntBetty
ImageButton
ibtn
ibtnSubmit
Label
lbl
lblResults
LinkButton
lbtn
lbtnSubmit
ListBox
lst
lstCountries
Panel
pnl
pnlForm2
PlaceHolder
plh
plhFormContents
RadioButton
rad
radFemale
RadioButtonList
radl
radlGender
RangeValidator
valg
valgAge
RegularExpression
vale
valeEmail_Validator
Repeater
rpt
rptQueryResults
RequiredFieldValidator
valr
valrFirstName
Table
tbl
tblCountryCodes
TableCell
tblc
tblcGermany
TableRow
tblr
tblrCountry
TextBox
txt
txtFirstName
ValidationSummary
vals
valsFormErrors
XML
xmlc
xmlcTransformResults
全局变量:
m_int
Str
Flot
局部变量:
int
Str
Flot
函数:
加注释说明功能模块
For循环中不用i、j,避免混淆。
==值写前面:
如:
if(8==m){….}
变量尽量在先定义
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电信 计费 稽核 系统 编码 规范