SQL Server数据库的DDL操作
概念:
DB 数据库 database
DBMS 数据库管理系统 database manger System
DBS 数据库系统 database System 数据库系统的核心数据库管理系统
DAO 数据库对象所有者 database owner
注意:
一个实例对应一个服务器
命名实例:服务器名/实例名
常见类型和所占字节
char 长度不可变
varchar 长度可变
int 4字节
small int 2字节
big int 8字节
text 字符超过8000个
tiny int 1字节
bit 1字节 0和1 视图 true和false
datatime
E-R图
实体 矩形
属性 椭圆形
联系 菱形
实体之间的联系:1对1,1对多,多对多
创建数据库
例如
create database 学生数据库
on primary
(
name=学生主文件, ------主文件逻辑名
filename='d:\学生主文件.mdf',------存储路径和物理文件名
size=1MB,----文件大小
maxsize=10MB,----文件最大值
sizegrowth=1MB -----增长速度
)
log on
(
name=学生日志文件,-----日志文件逻辑名
filename='d:\学生日志文件.ldf',-----存储路径和物理文件名
size=1MB,----文件大小
maxsize=10MB,------文件最大值
sizegrowth=1MB----增长速度
);
alter database 学生数据库 add file(name=学生次文件,'filename=d:\学生次文件.ndf',size=1MB,maxsize=10MB,sizegroth=1MB);
注意:
一个数据库有且只有一个主文件,0个或多个次文件,1个或多个日志文件
未指定文件组时,添加的次要文件将添加到primary文件组
默认条件下,primary文件组为默认文件组
数据表的创建
例子
create table 学生表
(
学号 int not null primary key identity,
姓名 varchar(10) not null unique,
性别 varchar(4) not null check(性别 in('男,女')) default '男',
出生日期 datetime not null,
政治面貌 varchar(4) not null default ‘党员’
);
例子
1.增加表中的列
alter table 学生表 add 身高 int not null;
2.修改表中的列信息
alter table 学生表 alter column 身高 bigint not null;
3.删除表中的信息
alter table 学生表 drop column 身高;
4.为表中的列赋初始值
alter table 学生表 add default 0 for 身高;
5.为表中的列添加约束条件
alter table 学生表 add unique 姓名 ;
6.修改表名
exec sp_rename ‘学生表(原表名)’,'学生数据表(新表名)';
7.修改列名
exec sp_rename ‘表名.原有列名’, ‘新列名' , 'column';
8.查询数据库的所有表名和所有字段信息
SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='学生基本信息表';
9.添加外键约束
alter table 课程表
add foreign key 学号 refenerces 学生表 学号
on delete cascate
on update cascate