2.创建表和数据类型

--切换数据库
use DBTEST

if exists(select * from sys.tables where name='Department' and type='U')----如果有这个名称(DBTES)的数据库,并且type的值为U(用户创建的)
drop table Department --删除表


--类型:
--char:定长,char(10),无论存储的数据是否到了10个字节,都要占用10个字节
--varchar:定长,varchar(10),存储几个字节占用几个字节
--text:长文本
--前面加n:存储unicode字符,对中文更友好
--varchar(10)可存储10个字母或5个汉字
--nvarchar(10)可存储10个字母或10个汉字



--创建表的基本语法
--建表(部门,职级,员工)
create table Department --部门表
(
   DepartmentId int primary key identity(1,1), --部门Id 整数类型 设为主键 初始值和增长值
   DepartmentName nvarchar(50) not null, --部门名称 字符串类型(50) 不能为空
   DepartmentRemark text --部门描述 长文本类型
)

create table [Rank] --职级表
(
   RankId int primary key identity(1,1), --职级Id 整数类型 设为主键 初始值和增长值
   RankName nvarchar(50) not null, --职级名称 字符串类型(50) 不能为空
   RankRemark text --职级描述 长文本类型

)
create table People --职级表
(
   DepartmentId int references Department(DepartmentId) not null,--部门编号 引用外键:references Department(DepartmentId):必须在部门表中部门Id里面有的数据
   RankId int references [Rank](RankId) not null, --职级编号
   PeopleId int primary key identity(1,1), --员工Id 整数类型 设为主键 初始值和增长值
   PeopleName nvarchar(50) not null, --员工姓名 字符串类型(50) 不能为空
   PeopleSex nvarchar(1) default('男') check(PeopleSex='男' or PeopleSex='女') not null, --员工性别  default:默认值  check:约束
   PeopleBirth smalldatetime not null, --员工时间 smalldatetime:近期时间
   PeopleSalary decimal(12,2)check(PeopleSalary>=1000 or PeopleSalary<=1000000) not null, --员工薪资 decimal:总长度和小数点后两位
   PeoplePhone varchar(20) unique not null,  --员工电话 unique:唯一约束
   PeopleAddress varchar(300) not null, --家庭地址
   PeopleAddTime smalldatetime default(getdate()),--添加时间 default(getdate()):默认当前时间
   RankRemark text --员工描述 长文本类型
)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值