SQL Server Transact-SQL语句之“创建”
4730 点击·0 回帖
![]() | ![]() | |
![]() | SQL Server Transact-SQL语句之“创建” Transact-SQL语句之“创建”: 1. 创建数据库 create database 数据库名 [on primary (name=…,filename=…,size=…,maxsize=…,filegrowth=…) … www.atcpu.com Log on (name=…,filename=…,size=…,maxsize=…,filegrowth=…) … filegroup 文件组名] 说明: (1)size、maxsize、filegrouwth 参数中不要使用小数,对于非整数兆字节的文件,应将其大小乘以1024转换为千字节 2. 创建表 create table 表名 (列名1 数据类型 {identify|not null|null}, 列名2 数据类型 {identify|not null|null}, …) 说明: (1) null表示该列的值可以为空值。不要把空值理解为该列的值是0或者空字符串等值 (2) identify是计数器,表示该列的值是一组递增的整数数据,初识默认值为1,增长步长默认为1 3. 创建约束 create table 表名 (列名1 数据类型 {identify|notnull|null} [constraint 约束名] 约束定义, 列名2 数据类型 {identify|not null|null} [constraint 约束名] 约束定义, … [constraint 约束名]约束定义) 名称 作用 实施的完整性 primary key 定义主键,保证主键列不重复出现 实体完整性 unique 保证该列不出现重复值 实体完整性 www.atcpu.com foreign key 定义外键,保证数据表间数据的一致性 参照完整性 check 定义表中某些列的数据范围 自定义完整性 default 为列的数据提供默认值 自定义完整性 4. 创建索引 Create [unique] [clustered|nonclustered]Index 索引名 on 表名(列名1,列名2,…) 说明: (1) 默认情况下,创建的索引是唯一的非聚集索引 (2) 建立索引时,必须先建立聚集索引,后建立非聚集索引。(非聚集索引中指针所指的数据位置是由聚集索引建立后确定的) 5. 创建视图 Create view <视图名> [(列名组)] <withencryption> As <子查询> <withcheck option> 说明: (1) 只能在当前数据库中创建视图 (2) 如果视图的基表或者视图被删除,则该视图不能再被使用,直到创建新的基表或视图 (3) 不能在视图上创建索引,不能在规则、默认、触发器的定义中视图 6. 创建规则 Create rule 规则名 as 规则表达式 www.atcpu.com 说明: (1) 规则表达式中可以包含比较符和算数运算符,但不能包括数据库对象名或表的列名 (2) 被绑定的列在规则表达式中被使用形式参数表示,参数前加上@符号 7. 创建默认 create default 默认名 as 表达式 说明: (1) 每一个列上只能定义一个默认约束 (2) 默认约束只在使用Insert语句时验证列的值 (3) 默认不能用于具有identify属性的列 8. 创建存储过程 Create Procedure 过程名 [;版本号] [@参数名 参数类型 [=默认值] [output]…] [with recompile|encryption|recompile,encryption] [for replication] As sql语句组 说明: (1)put表名参数是一个返回参数 (2)recompile为重编译选项,表名SQLServer不会保存该存储过程的执行计划 (3)replication用于指定不能在订阅服务器上执行为复制创建的存储过程 www.atcpu.com 9. 创建触发器 Create trigger 触发器名 on 表名 With encryption for delete,Insert,update withappend not forreplication as SQL语句组 触发器名 说明: (1)with append 指定应该添加现有类型的其他触发器 (2)Not for replication 说明当一个复制过程在修改一个触发器表时,与该表相关联的触发器不能被执行 | |
![]() | ![]() |