实验题目:数据库的创建与管理
一、实验目的
1.熟悉SQL的DDL(数据定义语言)、DML(数据操纵语言)、DCL(数据控制语言)。
2.掌握查询分析器中用DDL语言对表的增加、删除和改动。
二、实验仪器
计算机、SQL Server 2019软件,U盘(学生自备)。
三、实验原理
在企业管理器中实现对数据库的管理及使用T-SQL语句CREATE TABLE、ALTER TABLE及DROP TABLE来实现对数据表的创建、修改及删除。
四、实验内容与步骤
打开数据库SQL Server 2019的查询分析器,用SQL语言实现如下操作
1.在xscj数据库中用Create Table建表kc,表结构如下图所示:
kc |
---|
字段名 | 类型 | 长度 | 含义 |
---|---|---|---|
Cno | char | 5 | 课程编号 |
Cname | varchar | 20 | 课程名 |
Ctime | tinyint | 1 | 学时 |
Ccredit | int | 学分 |
create table kc
(
cno char(5),
cname varchar(20),
Ctime tinyint,
Ccredit int
);
2.用企业管理器向表中插入记录
3.在xscj数据库中用Create Table建表xs_kc,表结构如下所示:
xs_kc |
---|
字段名 | 类型 | 长度 | 含义 |
---|---|---|---|
Sno | char | 6 | 学生编号 |
Cno | char | 5 | 课程编号 |
Grade | int | 成绩 |
create table xs_kc
(
sno char(6),
cno char(5),
grade int
)
4.向xs 表增加“入学时间”列(列名为xs_kcome,日期型)
alter table xs add xs_kcome date;
5.将年龄的数据类型改为微整型。
alter table xs
alter column sbirth tinyint;
6.向xs 表增加“备注”列(列名为Note,字符型)
alter table xs
add note varchar;
7.向xs 表增加“奖学金等级”列(列名为MoneyGrade,字符型)
alter table xs
add MoneyGrade varchar;
8.在xs 表中删除名为“奖学金等级”的列
alter table xs
drop column MoneyGrade;
9.将以上的SQL语言存盘,以备老师检查。
create table xs_kc
(
sno char(6),
cno char(5),
grade int
)
alter table xs add xs_kcome date;
alter table xs
alter column sbirth tinyint;
alter table xs
add note varchar;
alter table xs
add MoneyGrade varchar;
alter table xs
drop column MoneyGrade;
五、实验数据的记录及处理
以上操作内容使用SQL语句编程并运行成功后,将程序进行记录,并写在报告纸上。
六、思考题
1.数据类型char、nchar、varchar、nvarchat的区别是什么?
char存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间。
varchar存储变长数据,但存储效率没有CHAR高,如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的。VARCHAR类型的实际长度是它的值的实际长度+1。
nchar、nvarchar最多存储4000个字符,不论是英文还是汉字;而char、varchar最多能存储8000个英文,4000个汉字。可以看出使用nchar、nvarchar数据类型时不用担心输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。
2.数据库和数据表的联系和区别是什么?
一个数据库中可以存放多个数据表,数据库用来存放数据表,数据表则存放详细数据。