1.实验目的
- 熟悉了解掌握SQL Server软件的基本操作与使用方法,以及通过理论课学习与实验参考书的帮助,熟练掌握使用T-SQL语句和交互式方法对数据表进行插入数据、修改数据、删除数据等等的操作;
- 作为后续实验的基础,根据实验要求重点掌握T-SQL语句的具体使用方法,希望通过本次实验,熟练掌握INSERT、UPDATE、DELETE等语句的语法和使用方法,但更重要的是理解SQL语句的原理;
- 可以根据特定的实际需要,利用T-SQL语句对相应的数据库表进行修改,在此次实验中主要掌握修改方法,但在后续的学习过程中要逐步提高自行编写程序的能力。
2.实验内容
- 录入数据至数据库表:excel的数据录入数据库表、交互式录入数据、使用Insert Into语句插入至数据库表;
- 修改数据库表中的数据:交互式修改数据、T-SQL修改数据;
- 删除数据库表中的数据:交互式删除数据、T-SQL修改数据;
- 复制数据库表:复制数据库表、复制数据库表中的部分数据。
3.实验步骤
3.1录入数据至数据库表
1.execl的数据录入数据库表
(1)如果想通过excel表将我们想要的数据录入至数据库表中,我们首先要创建一个后缀名为.xls的excel表。在此实验中,我们希望将数据导入至数据库表S中,因此我们根据实验的数据要求,创建一个命名为S-EXCEL.xls的Excel表格如下:

(2)导入数据:右击相应数据库,选择【任务】---> 【导入数据】,打开SQL Server的导入和导出向导:

(3)数据源设置:选择相应的Excel表的数据源,首先确定数据源来自Microsoft Excel,然后进行连接设置,确定Excel的++文件路径++,最后确定Excel的版本,实验中我们使用的Excel版本一般都是较高的,在此处我们选择2003年的版本:

(4)目标设置:首先一定要选择正确Microsoft OLE DB Provider for SQL Server(此处可选项较多容易选错),然后选择对应服务器(此实验中服务器为AQL),最后选择需要连接的数据库即可:
(5)表与目标连接:参数表左侧为需要导入的Excel表格,右侧为导入的目标对象的表的数据库,其中需要我们选择希望导入的表(Student):

(6)连接完成后,点击执行,即可得到弹出的执行成功的参数框,此时在SQL Server中查看数据库中的表的信息,可以看到Excel的数据已经完全被一次性导入成功了。

结果如下:

2.交互式录入数据
使用交互式方法,录入数据至数据库表TEACHER的方法较为简单,直接在数据库中打开【表】---> 【编辑前200行】,但此方法只能逐个逐个的数据框进行修改:

结果如下:

3.使用Insert Into语句插入至数据库表
使用Insert Into语句将课程数据插入至数据库表Course中,新建查询,输入代码如下所示,点击执行,即可实现一行数据的直接插入,重复执行实现所有数据的全部插入:

结果如下:

3.2修改数据
1.交互式修改数据
交互式修改数据方法较为简单,与上述实验中中交互式录入数据类似,选择【数据库】---> 【表】---> 【编辑前200行】后打开表,直接修改需要修改的数据即可,在此不再赘述实验具体步骤。
2.T---SQL修改数据
新建查询,输入代码如下所示,其代码含义为,选中数据库'jiaoxuedb',更新其中的表'TEACHER',将Tname为'齐2'的那一行的数据的Prof改为'副教授',我们也可以使用不同的代码实现不同的数据修改效果:

结果如下:

3.3删除数据
1.交互式删除数据
交互式删除数据,删除某一格数据的方法与修改数据相同,直接删除一行的数据需要右击需要删除的行数,选择删除即可;

2.T---SQL语句删除数据
新建查询,输入代码如下所示,其代码含义为,选中数据库'jiaoxuedb',删除其中的表'TEACHER'的Tname为'齐1'的那一行,需要注意的是,此操作会直接删除一整行:

3.4复制数据库
1.复制数据库表
新建查询,输入代码如下所示,其代码含义为,选中数据库'jiaoxuedb',选中数据库中的表SC,将其复制到一个新的表'FUZHI'中,刷新数据库可以看到新复制的表已经在数据库中:


2.复制数据库表中的部分数据
新建查询,输入代码如下所示,其代码含义为,选中数据库'jiaoxuedb',选中数据库表TEACHER,将sex为'男'的数据的TNO、SEX、AGE、PROF等数据复制到一个新的数据库表'test3'中:

结果如下:

4.课后习题
1.交互式录入提供表的前5个记录数据至数据库jxsk的数据库表SC中:
交互式方法根据之前实验内容打开对应数据库表的前200行,然后进行修改即可,结果如下:

2.用INSERT INTO语句录入提供表中后5个记录数据至数据库jxsk的数据库表SC中:
新建查询,输入代码如下,得到数据库表SC的最终结果:

3.用SQL语句把计算机系学生的年龄增加1岁:
新建查询,输入代码如下所示:

得结果如下,所有专业为计算机的学生成功年龄加1:

4.把成绩不及格的学生的学号、课号和成绩放入一个新表makeup_s中:
新建查询,输入代码如下,得到结果符合要求:

