数据库设计(6)_命名及编码规范_SQL SERVER
一、综述
命名和编码过程中,定义有意义的名称,以易于理解、方便书写为原则。
(1)避免使用中文,尽量使用全拼音或全英文,以方便国际化;
(2)避免拼音和英文的中西合璧,如:CAOZUO_TIME;
(3)避免在命名中包括空格及特殊字符;
(4)避免使用保留字;
(5)避免名称太长,注意缩写的使用,缩写规则为单词前4个字母,合成词取每个单词前两位组成4位缩写,对于约定束成的缩写不必遵守取4位的规则,比如:NO代表NUMBER,如果取NUMB反而让人费解。
二、命名规范
2.1、数据库
前缀:使用与数据库业务对象相对应的英文单词或英文缩写;
名称:使用与数据库业务性质相对应的英文单词或英文缩写;
举例:BHO_STATISTIC
注意:
(1)名称一律使用单数形式;
(2)动词一律保持动宾结构,通常增、删、改、查、统计的动作,使用ADD、DEL、UPD、QRY、STA作为缩写,以降低命名的长度;
2.2、数据库文件及文件组
(1)数据库文件存放路径:D:\DATA、E:\LOG;
(2)数据库文件组命名:主文件组 PRIMARY,次文件组 FG_业务模块_数据分类,如:FG_CONFIG_ACCOUNT;
(3)数据库主数据文件命名:DBNAME_DATA.MDF,如:BHO_STATISTIC_DATA.MDF;
(4)数据库从数据文件命名:DBNAME_DATA_XX.NDF,XX为两位整数,不足两位第1位用0补齐,如:BHO_STATISTIC_DATA_01.NDF;
(5)数据库日志文件命名:DBNAME_LOG_XX.LDF,XX为两位整数,不足两位第1位用0补齐,如:BHO_STATISTIC_LOG_01.LDF;
2.3、数据库逻辑对象
2.3.1、架构
通常使用业务模块名作为架构名,如:配置模块(CONFIG)。
(1)方便数据库对象分类;
(2)方便权限管理。
2.3.2、表
前缀、名称、后缀均以下划线(_)间隔,字母均使用大写。
(1) 实体表
前缀:ETB(E表示ENTITY)
名称:架构名.ETB_名词
举例:PUBLIC.ETB_LEAGUE
(2)关系表
前缀:RTB(R表示RELATION)
名称:架构名.RTB_实体英文单词缩写_实体英文单词缩写[_实体英文单词缩写…]
举例:PUBLIC.RTB_HOPA_LEAG(即CONFIG.RTB_HOMEPAGE_LEAGUE)
(3)事实表
前缀:FACT
名称:架构名.FACT_动宾结构
举例:CONFIG.FACT _ADD_USER
(4)报表
前缀:RPT(REPORT的简写)
名称:架构名.RPT_动宾结构
举例:CONFIG.RPT_ ADD_USER
(5)字段
名称:词_词,全部大写
举例:FIRST_NAME
注意:
a)避免字段名中包含表名,如
相关文档:
一、主要是需要更新mssqlServer 的时候需要进行一些是否存在的判断,在mssql2000 和 2005 上测试没有哦问题
--//判断是表Table_UserInfo里是否有字段
if not exists(select * from syscolumns where id=object_id('Table_UserInfo') and name='Tel') begin
ALTER table Table_UserInfo add Tel varchar(200)--增加字段
......
转自:http://www.sqlkey.cn/sql-yuju/sql_yuju.html
一、基础
1、说明:创建数据库
CREATE DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:备份sql server
--- 创建 备份数据的 device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.d ......
很多人对Xpath可能比较熟悉,但不知道有没有直接操作过数据库,我们都知道 在Sql2005里公支持的几种查询有Raw,Auto,Path模式等,如果在2000里使用过 Path模式的朋友应该知道,是不容易处理查询结果的,那么在2005里对这一块做了很好的提升
我先来介绍一下什么是Sql F ......
如果SQL Server程序员想将表达式从一种换为另一种,他可以从SQL Server 7和2000中自带的两种功能中做出选择。在存储过程或其他情况下,我们常常需要将数据从datetime型转化成varchar型;CONVERT和CAST就可以用于这种情况。
由于SQL Server提供两种功能,因此应该选择哪种功能或应该在哪种情况下使用该功能就很容易让 ......
DECLARE @ServerName nvarchar(50) --数据库服务器名称(数据库服务器IP)
DECLARE @DataBaseName nvarchar(50) --数据库名称
DECLARE @UserName nvarchar(50) --登录数据库用户ID
DECLARE @UserPwd nvarchar(50) --登录数据库密码
DECLARE @TbName nvarchar(50) --表名字
DECLAR ......