前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >1 - SQL Server 2008 之 使用SQL语句创建具有约束条件的表

1 - SQL Server 2008 之 使用SQL语句创建具有约束条件的表

作者头像
CNXY
发布2017-12-25 15:25:21
2.8K0
发布2017-12-25 15:25:21
举报
文章被收录于专栏:C# 编程C# 编程

约束条件分为以下几种:

1)非空约束,使用NOT NULL关键字;

2)默认值约束,使用DEFAULT关键字;

3)检查约束,使用CHECK关键字;

4)唯一约束,使用UNIQUE关键字;

5)主键约束,使用PRIMARY KEY关键字;

6)外键约束,使用FOREIGN KEY关键字。

约束是确保数据的完整性,从而阻止不希望插入的数据被录入。

以下使用一段SQL代码进行演示:

代码语言:javascript
复制
USE PersonInfo  --使用PersonInfo数据库
GO

IF EXISTS (SELECT * FROM sys.tables WHERE [name] = 'Employee ')  --如果存在Employee这张表
DROP TABLE Employee  --则删除
GO

IF EXISTS(SELECT * FROM sys.tables WHERE [name] = 'Person')  --如果存在Person这张表
DROP TABLE Person --则删除
GO

CREATE TABLE Person --创建Person(人物)表
(
  --索引
  PersonID int IDENTITY(1,1) NOT NULL CONSTRAINT PK_PersonID PRIMARY KEY,-- 创建一个整型、自增为1、标识种子为1、不允许为空、约束条件为主键约束的列PersonID
  --名字
  Name nvarchar(20) NOT NULL, --创建一个Unicode非固定长度(最多存储20个Unicode字符)的列Name
  --年龄
  Age int NOT NULL  CONSTRAINT CK_Age CHECK (Age >= 18  AND Age<=55) ,--创建一个整型、约束条件为检查约束的列Age
  --性别
  Gender bit NOT NULL CONSTRAINT DF_Gender  DEFAULT(1) , --创建一个类型为bit、默认值为1(True)的列Gender
  --身份信息
  [Identity] nchar(18) NOT NULL CONSTRAINT CK_Identity CHECK(LEN([Identity])=18)  
                                CONSTRAINT  UQ_Identity UNIQUE
  --创建一个非Unicode非固定长度(最多存储18个非Unicode字符)的、约束条件为检查约束的列Identity
)
GO


CREATE TABLE Employee --创建Employee(雇员)表
(
    --索引
    EmployeeID int IDENTITY(1,1001) NOT NULL CONSTRAINT PK_ID PRIMARY KEY, -- 创建一个整型、自增为1、标识种子为1001、不允许为空、约束条件为主键约束的列EmployeeID
    --人物索引 
    PersonID int NOT NULL CONSTRAINT FK_PersonID FOREIGN KEY REFERENCES Person(PersonID),
    --职位 
    Post nvarchar(20) NOT NULL,--创建一个Unicode非固定长度(最多存储20个Unicode字符)的列Post
    --入职时间 
    EntryTime datetime CONSTRAINT DF_EntryTime DEFAULT getdate() --创建一个类型为datetime、默认值为取服务器时间的列EntryTime
)
GO 

结果:

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016-06-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档