SqlServer创建删除数据库,表,约束

使用SQL语句创建和删除数据库

数据库的组成部分:

        1>主数据文件:       *.mdf

        2>次数据文件:       *.ndf

        3>日志文件:           *.ldf

创建数据库:

T-SQL创建数据库的语法如下:

        CREATE DATABASE 数据库名

            ON [PRIMARY]

            (

             <数据文件参数>  [,……n] [<文件组参数>]

            )

            [LOG ON]

            (

             {<日志文件参数>  [,……n] }

            )

          文件具体参数语法如下:

          (

           [NAME=逻辑文件名,]

           FILENAME=物理文件名

           [,SIZE=大小]

           [,MAXSIZE={最大容量|UNLIMITED}]

           [,FILEGROWTH=增长值]

           )[,……n]

           文件组参数的语法如下:

           FILEGROUP 文件组名 <文件参数> [,……n]

           其中,“[ ]”表示可选部分,“{ }”表示必需的部分。各参数的含义说明如下:

           》数据库名:数据库的名称,最长为128个字符

           》PRIMARY:该选项是一个关键字,指定主文件组中的文件

           》LOG ON:指明事务日志文件的明确定义

           》NAME:指定数据库的逻辑名称,这是在SQL Server系统中使用的名称,是数据库在SQL Server中的标识符

           》FILENAME:指定数据库所在文件的操作系统文件名称和路径,该操作系统文件名和NAME的逻辑名称一一对应

           》SIZE:指定数据库的初始容量大小

           》MAXSIZE:指定操作系统文件可以增长到的最大尺寸

           》FILEGROWTH:指定文件每次增加容量的大小,当指定的数据为0时,表示文件不增长

 

           删除数据库:

           DROP DATABASE 数据库名

 

          接下来的问题是如何检测是否存在该数据库

           EXISTS(查询语句)可以检测某个查询是否存在,如果查询语句返回的记录结果不为空,则表示存在;否则表示不存在

 

           IF EXISTS ( SELECT * FROM SYSDATABASES WHERE NAME='KEYMO' )

           DROP DATABASE KEYMO

           CREATE DATABASE KEYMO

           (

                         ……

           )

 

           这段语句表示在系统表中查询是否有KEYMO库存在,如果不存在,则创建KEYMO数据库,如果存在,则删除该库再创建KEYMO数据库

 

使用SQL语句创建和删除数据表

 创建表

           创建表的步骤:

           1>确定表中有哪些列

           2>确定每列的数据类型

           3>给表添加各种约束

           4>创建各表之间的关系

创建表的语法如下:

           CREATE TABLE 表名

           (

           字段1 数据类型 列的特征

           字段2数据类型 列的特征

           ……       

           )

删除表

           DROP TABLE 表名

 

使用SQL语句创建和删除约束

 约束的目的是确保表中数据的完整性,常用的约束类型如下:

》主键约束(Primary Key Constraint):要求主键列数据唯一,并且不允许为空

》唯一约束(Unique Constraint):要求该列唯一,允许为空,但只能出现一个空值

》检查约束(Check Constraint):某列取值范围限制、格式限制等,如有关年龄的约束

》默认约束(Default Constraint):某列的默认值,比如学员信息表,男生多的话就可将默认设为“男”

》外键约束(Foreign Key Constraint):用于在两表之间建立关系,需要指定引用主键的那一列

 

添加约束

           ALTER TABLE 表名

           ADD CONSTRAINT 约束名 约束类型 具体的约束说明

 

示例:

           ——添加主键约束(将stuNo作为主键)

           ALTER TABLE STUINFO

           ADD CONSTRAINT PK_STUNO PRIMARY KEY (stuNo)

           ——添加唯一约束(身份证号唯一)

           ALTER TABLE STUINFO

           ADD CONSTRAINT UQ_STUID UNIQUE (stuId)

           ——添加默认约束(如果地址不填,默认为“地址不详”)

           ALTER TABLE STUINFO

           ADD CONSTRAINT DF_STUADDRESS DEFAULT ('地址不详') FOR STUADDRESS

           ——添加检查约束,要求年龄只能在15~40岁之间

           ALTER TABLE STUINFO

           ADD CONSTRAINT CK_STUAGE CHECK (STUAGE BETWEEN 15 AND 40)

           ——添加外键约束(主表STUINFO和从表STUMARKS建立关系,关联字段为stuNo)

           ALTER TABLE STUINFO

           ADD CONSTRAINT FK_STUNO FOREIGN KEY (stuNo) REFERENCES STUINFO (stuNo)

          

删除约束

           ALTER TABLE 表名

           DROP CONSTRAINT 约束名

          

 

 

 

 

 

 

  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值