--切换数据库
use DBTEST
--创建表的基本语法
/*
create table 表名
(
字段名1 数据类型,
字段名1 数据类型,
字段名1 数据类型
)
*/
--判断表是否存在
if exists(select * from sys.objects where name='Department' and type='U')
drop table Department
--建表(部门,职级,员工)
create table Department
(
--部门编号,primary key:主键,identity(1,1):自动增长,初始值1,增长的步长1
DepartmentId int primary key identity(1,1),
--部门名称,并且不能为空
DepartmentIdName nvarchar(50) not null,
--部门描述
DepartmentRemark text
)
--char:定长,char(10),里面可以存储10个字节,无论存储的数据是否真的到了10个字节,都要占用10个字节。
--char(10)存储'ab',仍然占用10个字节
--varchar():变长,varchar(10),最多占用10个字节。
--varchar(10):存储'ab',占用了两个字节
--text:长文本
--char、varchar、text前面加n:存储unicode字符,对中文友好
--varchar(100):存储100个字母,50个汉字
--nvarchar(100):存储100个字母,100个汉字
create table [Rank]
(
--职级编号,primary key:主键,identity(1,1):自动增长,初始值1,增长的步长1
RankId int primary key identity(1,1),
--职级名称,并且不能为空
RankName nvarchar(50) not null,
--职级描述
RankRemark text
)
--员工
create table People
(
PeopleId int primary key identity(1,1),--员工编号
DepartmentId int references Department(DepartmentId) not null,--部门(引用外键)
RankId int references [Rank](RankId) not null, --职级 (引用外键)
PeopleName nvarchar(50) not null,--姓名
PeopleSex nvarchar(1) default('男') check(PeopleSex='女' or PeopleSex='男')not null,--性别
PeopkleBirth smalldatetime not null,--生日
PeopleSalary decimal(12,2) check(PeopleSalary>=1000 and PeopleSalary<=1000000) not null,--月薪
PeoplePhone varchar(20) unique not null,--电话
PeopleAddress varchar(300),--地址
PeopleAddTime smalldatetime default(getdate())--添加时间
)
创建数据表
最新推荐文章于 2024-11-06 11:17:40 发布
该文演示了在数据库中创建表的过程,包括定义表的字段、数据类型、主键、自动增长属性以及外键约束。示例涵盖了部门、职级和员工表,强调了定长与变长字符类型的区别,并设置了默认值和检查约束。
摘要由CSDN通过智能技术生成