目录

  • ​​数据库的创建与删除​​
  • ​​创建学生表 student​​
  • ​​创建课程表 Course​​
  • ​​创建学生选课表 Sc​​
  • ​​数据类型​​
  • ​​检查约束​​
  • ​​修改基本表​​
  • ​​删除基本表​​
  • ​​索引的建立与删除​​
  • ​​建立索引​​
  • ​​修改索引​​
  • ​​删除索引​​

数据库的创建与删除

创建数据库   creat database 数据库名称
打开数据库   use 数据库名称
删除数据库   drop database 数据库名称
更改数据库名字 sp_renameedp 原数据库名称 更改后数据库名称

创建数据库Student,并打开

create database Student
go
use student
go

创建学生表 student

create table student
(sno char(9) primary key,--学号
sname char(20) unique, --姓名
ssex char(2), --性别
sage smallint, --年龄 smallint为短整型
sdept char(20)); --所在系

创建课程表 Course

create table Course
(Cno char(4)primary key, --课程号
Cname char(40), --课程名
Cpno char(4), --先行课
Ccredit smallint, --学分
foreign key(Cpno)references Course(Cno)); -- Cpon做外键

创建学生选课表 Sc

create table SC
(Sno char(9), --学号
Cno char(4), --课程号
Grade smallint, --成绩
primary key(Sno,Cno), --Sno Cno做主键
foreign key(Sno)references student(Sno), --外键 Sno
foreign key(Cno)references Course(Cno)); --外键 Cno

数据类型

第三章 数据定义_表名

检查约束

primary key   --主键约束
foreign key --外键约束
not null --非空约束
check --检查约束
unique --唯一约束
default --默认约束

修改基本表

alter table 表名
exec sp_rename 表名.列名,新表名.新列名 --修改表名列名
add 新列名 数据类型 完整约束型 --增加列 无论基本表是否已有数据 新增列一律为空值
drop 完整性约束名 --删除完整型约束
drop column 列名 --删除列
alter column 列名 数据类型 --更改列数据类型

删除基本表

alter table 表名 [restrict|cascade]   --后边两个参数
restrict --限制 如果存在依赖该表的对象则此表不能被删除
cascade --级联 再删除基本表的同时,相关的依赖对象一起删除
--缺省为restrict

索引的建立与删除

建立索引

--主键(primary key)和唯一约束(unquie)列DBMS一般会自动建立索引
unique --表明此索引的每一个索引值只对应唯一的数据记录
clustered /*表示要建立的索引是聚簇索引
在经常查询的列上建立聚簇索引以提高查询效率
一个基本的表最多自能建立一个聚簇索引
经常更新的列不建议建立聚簇索引*/

asc --升序
desc --降序(默认)
--格式如下
create unique/clustered index 索引名 on 表名(列名 asc/desc)

修改索引

alter index 旧索引名 rename to 新索引名

删除索引

drop index 索引名 on 表名