《数据库系统原理》实验5:表数据的维护

一、实验目的

熟练掌握使用Transact-SQL语言和通过Navicat输入表数据、修改表数据和删除表数据的操作。

二、实验内容

1、在数据库world中建立一个名为newlanguage的表,其结构与表countrylanguage完全一样(注意各字段的默认值、字符集、排序方式等),如下图:

注意IsOfficial是枚举类型,需指定值,否则会报错:

2、在表newlanguage中插入中国的客家话,其名称为CountryCode为CHN,language为Kejia,isOfficial为F,percentage为0.3:

输入以下代码并运行:

use world;  
INSERT INTO newlanguage  
VALUES ('CHN','Kejia','F','0.3');  

4、试将表countrylanguage中的所有记录插入到表newlanguage中去。

输入以下代码并运行:

use world;  
INSERT INTO newlanguage  
SELECT *  
FROM countrylanguage  

5、将表newlanguage中Language为“Kejia”的语言的Percentage改为0.4

输入以下代码并运行:

use world;  
UPDATE newlanguage  
SET Percentage = '0.4'  
WHERE Language = 'Kejia'  

6、将表newlanguage中语言的Percentage均减去0.1。

输入以下代码并运行:

use world;  
UPDATE newlanguage  
SET Percentage = Percentage - 0.1  

7、删除表newlanguage中澳大利亚(CountrCode为“AUS”)的英语记录。

输入以下代码并运行:

USE world  
DELETE FROM newlanguage  
WHERE Language = 'English' and CountryCode = 'AUS'  

8、清空表newlanguage中的所有数据。

输入以下代码并运行:

USE world  
DELETE * FROM newlanguage  

三、课后练习题

以下题目在数据库world中完成。

1、通过Navicat,在country、countrylanguage、和city三个表中各输入10条记录。

2、将一条新的城市记录(Name:Beijing,Country:AFG,District:Beijing,Population:21148000)插入表city中。

输入以下代码并运行:

USE world;  
INSERT INTO city(Name,CountryCode,District,Population)  
VALUES('Beijing','AFG','Beijing','21148000')  

3、插入一条语言记录(“CHN”,“Minnan”,“F”,0.5)到表countrylanguage。

输入以下代码并运行:

USE world;  
INSERT INTO countrylanguage  
VALUES('CHN','Minnan','F','0.5');  

4、删除CountryCode为“ABW”的语言记录。

输入以下代码并运行:

USE world;  
DELETE FROM countrylanguage  
WHERE CountryCode = 'ABW';  

四、出现的问题及解决方案

问题:

ORDER BY关键字降序排序问题

SQL AND & OR 运算符与优先级问题

WHERE语句的特殊条件——例如is null、between and、like模糊查询等问题

Enum枚举类型的设定值问题

解决方案:

参考《数据库系统概论课本》、菜鸟教程(https://www.runoob.com/sql)和CSDN博客

发布了79 篇原创文章 · 获赞 100 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/lee1hong/article/details/105762622