数据库的学习
数据库系统一般由数据库、数据库管理系统、数据库开发工具、数据库应用系统和数据库用户构成
。
数据库DB
数据库管理系统 DBMS:提供数据定义语言DDL、数据操作语言DML
数据库应用系统
数据库用户:终端用户、应用程序员、数据库管理DBA;
二、数据库的三级模式(共有的):外模式、模式和内模式
两级映像
外模式/模式映像:定义对应关系
模式/内模式映像:
三、概念模型(E-R模型)
四、数据模型
五、关系数据库(三种范式+BC范式)
六、数据库设计(概括以上内容)。
七、T-SQL语言
结构化查询语言(Struectured Qurey Language ,SQL)用于SQL Server数据库管理系统。
master数据库:记录系统中所有系统级的信息。它对其它数据库实施管理和控制的功能,还保存了用于SQL Server管理的许多系统级的信息。记录所有的登陆帐户和系统配置,始终有一个可用的最新master数据库备份。
model数据库为用户新创建的数据库模板。
msdb数据库提供SQL Server代理程序调度作业以及记录操作时使用。
tempdb数据库所有连接到系统用户的临时表和临时存储过程都被存储在该数据库中。
CREATE DATABASE STUDENG--创建数据库
ON PRIMARY --一个主文件
(NAME = 'STUDENT_DATA',
FILENAME='D:\SQL server\MSSQL10_50.EDIT\MSSQL\DATA\STUDENT_DATA.MDF',
SIZE = 5MB,
MAXSIZE = 20MB,
FILEGROWTH=20%)
LOG ON
(NAME ='STUDENT_LOG',
FILENAME = 'D:\SQL server\MSSQL10_50.EDIT\MSSQL\DATA\STUDENT_LOG.LDF',
SIZE = 5MB,
MAXSIZE= 10MB,
FILEGROWTH= 2MB)
ALTER DATABASE STUDENT--修改数据库
MODIFY FILE--ADD FILE
(NAME =STUDENT_DATA
SIZE =20MB)
ALTER DATABASE STUDENT--删除数据库文件
REMOVE FILE STUDENT_DATA
sp_renamedb 'student','students_back'--数据库更名
drop database student--删除数据库
表操作
每个数据库最多可以存放20亿个表,每个表可包含1024个字段。表的创建、修改和删除操作,表的数据插入、修改、删除以及数据库表中的数据导入/导出等
create table 课程表--unique、check、default、foreign key 表名【列名】
(课程号 char(4)PRIMARY KEY,
课程名 varchar(20) not null,
学时 tinyint,
学分 tinyint)
alter table 课程表
add 任课教师 varchar(10)
drop column 学分
创建主键约束
create table 课程表2(
课程号 char(4) not null,
课程名 varchar(20) not null,
学时 tinyint,
学分 tinyint not null
)
alter table 课程表2
add constraint pk_st PRIMARY KEY(课程号)
--drop constraint pk_st
创建和删除UNIQUE约束
create table 课程表2(
课程号 char(4) not null,
课程名 varchar(20) not null,
学时 tinyint constraint uk_st1 unique,
学分 tinyint not null
)
alter table 课程表
add constraint uk_st2 unique(学时)
alter table 课程表
drop constraint uk_st1
创建和删除foreign key约束同主键约束
创建和删除check约束
create table 课程表2(
课程号 char(4) not null,
课程名 varchar(20) not null,
学时 tinyint constraint uk_st1 unique,
学分 tinyint not null check(学分>100)
)
alter table 课程表
add constraint check_name check(学分>100)
创建和删除default约束
create table 课程表2(
课程号 char(4) not null,
课程名 varchar(20) not null,
学时 tinyint default 20,
学分 tinyint not null check(学分>100)
)
alter table 课程表
add 已选人数 int null
constraint default_name default 40
表数据操作
insert into 课程表
values('1010','计算机','20','100')
update 课程表
set 课程名='网络' where 课程号='1010'--set 课程号='1020'
delete 课程表 where 课程号='1010'
清空表格
truncate table 课程表
使用MERGE(合并)语句插入、修改和删除数据???
删除表drop table 课程表