SQL Server(第一章) 创建表 删除表 创建主键约束唯一约束外键约束CHECK约束默认约束

Posted 渴死的鱼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server(第一章) 创建表 删除表 创建主键约束唯一约束外键约束CHECK约束默认约束相关的知识,希望对你有一定的参考价值。


1.Employees员工表
/**
创建Employees员工表
**/
USE TSQL2012
IF OBJECT_ID(dbo.Employees,U) IS NOT NULL
DROP TABLE dbo.Employees

CREATE TABLE dbo.Employees
(
    empid    INT    NOT NULL,
    firstname    VARCHAR(30)    NOT NULL,
    lastname    VARCHAR(30)    NOT NULL,
    hiredate    DATE    NOT NULL,
    mgrid    INT    NULL,
    ssn        VARCHAR(20)    NOT NULL,
    salary    MONEY    NOT NULL
)
/**
添加主键约束
**/
ALTER TABLE dbo.Employees ADD CONSTRAINT PK_Employees
PRIMARY KEY(empid);
/**
添加唯一约束
**/
ALTER TABLE dbo.Employees ADD CONSTRAINT UNQ_Employees_ssn
UNIQUE(ssn);
/**
添加外键约束
**/
ALTER TABLE dbo.Employees ADD CONSTRAINT FK_Employees_Employees
FOREIGN KEY(mgrid) REFERENCES dbo.Employees(empid);
/**
添加CHECK约束
**/
ALTER TABLE dbo.Employees ADD CONSTRAINT CHK_Employees_salary
CHECK(salary>0.00)
/**
删除CHECK约束
**/
ALTER TABLE dbo.Employees DROP CONSTRAINT CHK_Employees_salary

 

2.Orders订单表

/**
    创建Orders订单表
**/
USE TSQL2012

IF OBJECT_ID(dbo.Orders,U) IS NOT NULL DROP TABLE dbo.Orders;

CREATE TABLE dbo.Orders
(
    orderid    INT    NOT NULL,
    empid    INT NOT NULL,
    custid    VARCHAR(10) NOT NULL,
    orderts    DATETIME2    NOT NULL,
    qty    INT    NOT NULL,
    CONSTRAINT PK_Orders PRIMARY KEY(orderid)
);
/**
添加主键约束
**/
ALTER TABLE dbo.Orders ADD CONSTRAINT FK_Orders_Employees FOREIGN KEY(empid)
REFERENCES dbo.Employees(empid);
/**
添加默认约束
**/
ALTER TABLE dbo.Orders ADD CONSTRAINT DFT_Orders_orderts
DEFAULT(SYSDATETIME()) FOR orderts;

/**
删除CHECK约束
**/
ALTER TABLE dbo.Employees DROP CONSTRAINT DFT_Orders_orderts

 


以上是关于SQL Server(第一章) 创建表 删除表 创建主键约束唯一约束外键约束CHECK约束默认约束的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL第一章 创建表 修改表名 删除字段 添加字段 修改地段名

sql server创建临时表的两种写法和删除临时表

sql server如何将字段添加到第一列

MySQL 第一章创建数据库&表

SQL Server R2 2008中的SQL Server Management Studio 阻止保存要求重新创建表的更改问题的设置方法

SQL Server:使用 FK 删除表