SQL Server实战二:创建、修改、复制、删除数据库表并加以数据处理
本文介绍基于 Microsoft SQL Server 软件,实现数据库 表 的 创建、修改、复制、删除 与 表数据处理 的方法。
系列文章中示例数据来源于《 SQL Server实验指导(2005版) 》一书。依据本系列文章的思想与对操作步骤、代码的详细解释,大家用自己手头的数据,可以将相关操作与分析过程加以完整重现。
1 交互式创建数据库表T
(1) 启动Microsoft SQL Server 2008 R2软件;
(2) 在“对象资源管理器”窗格中,在“数据库”处右键,在弹出的菜单中选择“附加”选项;
(3) 选择需要加以附加的数据库物理文件,选择定位文件夹“G:\sql\chutianjia sql”并选择对应数据库jxsk的物理文件并选择“确定”按钮,再次选择“确定”即可;
(4) 选择“数据库”→“jxsk”;右击“表”,在弹出的菜单中选择“新建表”选项;
(5) 依照《SQL Server实验指导(2005版)》“教师表T”中内容,输入各字段定义;单击工具栏中的保存按钮,在弹出的“选择名称”对话框中输入表名称“T”;点击“确定”;
(6) 点击窗格右上角关闭按钮,关闭窗格;在“对象资源管理器”中,单击“数据库”,打开所建立的数据库表,选择“列”,即可看到其内容,如以下两图;
2 交互式创建数据库表S
依据上述方式创建学生表“S”,其中依照《SQL Server实验指导(2005版)》中内容,输入各字段定义,如以下两图;
3 T-SQL创建数据库表C
(1) 单击屏幕上方 “工具栏”菜单中的“新建查询”按钮,打开“查询编辑器”窗口,并在“查询编辑器”窗口中输入以下T-SQL语句:
CREATE TABLE C(CNO CHAR(2),
CN CHAR(10),
CT TINYINT)
(2) 将jxsk设置为当前数据库,单击 “工具栏”中的“执行(x)”按钮,即可执行上述T-SQL语句,如下图;
(3) 在“对象资源管理器”窗格中,在“数据库”→“jxsk”→“表”处右键,在弹出的菜单中选择“刷新”选项,可见其所示内容中已存在通过上述方法新建立的数据库表C,如下图;
4 T-SQL创建数据库表SC
依据上述方式创建表“SC”,如下两幅幅图;其中输入的语句为:
CREATE TABLE SC(SNO CHAR(2),
CNO CHAR(2))
5 T-SQL创建数据库表TC
依据上述方式创建表“TC”,如以下两幅图;其中输入的语句为:
CREATE TABLE TC(TNO CHAR(2),
CNO CHAR(2))
6 交互式向数据库表S中添加新列NATIVE
(1) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”,右击“dbo.S”,在弹出的菜单中选择“编辑前200行”,如下图;
(2) 在打开的表设计器的最后一行添加新列NATIVE,其中列名为NATIVE,数据类型为CHAR,长度为40,选择为NOT NULL;在操作过程中需要进行取消阻止保存项,如下图;
(3) 单击工具栏中的保存按钮,并将窗口关闭。
7 交互式修改数据库表S中的列NATIVE
(1) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”,右击“dbo.S”,在弹出的菜单中选择“编辑前200行”;
(2) 将新列NATIVE的长度修改为16,选择为NULL,如下图;
(3) 单击工具栏中的保存按钮,并将窗口关闭。
8 交互式删除数据库表S中的列NATIVE
(1) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”,右击“dbo.S”,在弹出的菜单中选择“编辑前200行”;
(2) 找到要删除的列NATIVE,单击NATIVE的行选择器,选择要删除的列NATIVE定义行并右击,在弹出的菜单中选择“删除”,如下图;
(3) 单击工具栏中的保存按钮,并将窗口关闭。
9 T-SQL向数据库表S中添加列NATIVE
(1) 依照上述方法重新创建数据库表S;
(2) 单击屏幕上方 “工具栏”菜单中的“新建查询”按钮,打开“查询编辑器”窗口,并在“查询编辑器”窗口中输入以下T-SQL语句,如下图:
ALTER TABLE S
ADD NATIVE CHAR(40) NULL
(3) 将jxsk设置为当前数据库,单击 “工具栏”中的“执行(x)”按钮,即可执行上述T-SQL语句,如下图;
(4) 在“对象资源管理器”窗格中,在“数据库”→“jxsk”→“表”→“odb.S”→“列”处右键,在弹出的菜单中选择“刷新”选项,可见其所示内容中已存在通过上述方法新建立的列NATIVE,如下图;
10 T-SQL修改数据库表S中的列NATIVE
(1) 单击屏幕上方 “工具栏”菜单中的“新建查询”按钮,打开“查询编辑器”窗口,并在“查询编辑器”窗口中输入以下T-SQL语句:
ALTER TABLE S
ALTER COLUMN NATIVE CHAR(16) NULL
(2) 将jxsk设置为当前数据库,单击 “工具栏”中的“执行(x)”按钮,即可执行上述T-SQL语句,如下图;
(3) 在“对象资源管理器”窗格中,在“数据库”→“jxsk”→“表”→“odb.S”→“列”处右键,在弹出的菜单中选择“刷新”选项,可见其所示内容中通过上述方法新建立的列NATIVE的定义已被修改,如下图;
11 交互式删除数据库表TC
(1) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”,右击“dbo.TC”,在弹出的菜单中选择“删除”;
(2) 可以发现在“删除对象”列表中存在待删除的数据库表TC,单击“确定”按钮,完成删除数据库表TC操作,如下图;
(3) 在“对象资源管理器”窗格中,在“数据库”→“jxsk”→“表”处右键,在弹出的菜单中选择“刷新”选项,可见其所示内容中已不存在数据库表TC,如下图;
12 T-SQL删除数据库表T
(1) 单击屏幕上方 “工具栏”菜单中的“新建查询”按钮,打开“查询编辑器”窗口,并在“查询编辑器”窗口中输入以下T-SQL语句:
USE jxsk
GO
DROP TABLE T
GO
(2) 将jxsk设置为当前数据库,单击 “工具栏”中的“执行(x)”按钮,即可执行上述T-SQL语句,如下图;
(3) 在“对象资源管理器”窗格中,在“数据库”→“jxsk”→“表”处右键,在弹出的菜单中选择“刷新”选项,可见其所示内容中已不存在数据库表T,如下图;
13 Excel文件S_EXCEL.xls中数据导入数据库表S
(1) 依据实验教材,创建Excel格式文件S_EXCEL.xls;
(2) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”并右击,在弹出的菜单中选择“任务”→“导入数据”,打开“SQL Serve 导入和导出向导”,如下图;
(3) 选择“下一步”按钮,打开“选择数据源”菜单,在“数据源”下拉列表中选择 Microsoft Excel;单击“Excel文件路径”一栏右侧的“浏览”按钮,选择要导入的源数据文件S_EXCEL.xls,如下图;
(4) 在“Excel版本”一栏下拉列表中,选择 Microsoft Excel 97-2003;选择“首行包含列名称”复选框;
(5) 选择“下一步”按钮,打开“选择目标”窗口,设置导入目标数据库各选项,并正确配置各选项,如以下图;
(6) 执行完毕,系统显示“执行成功”窗口,如果有“错误”,返回前面相应的步骤纠正后,继续执行。单击“关闭”按钮,数据导入操作完成,如下两图;
(7) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”并右击表S,在弹出的菜单中选择“选择前1000行”可查看表中内容,如下图。
14 交互式录入数据至数据库表T
(1) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”,右击“dbo.TC”,在弹出的菜单中选择“编辑前200行”;
(2) 在打开的空的数据库表T中,依照实验教材指导书上内容将数据录入数据库表T中,如以下两图;
(3) 单击数据库表T窗格右上角的“关闭”按钮,以关闭数据库表T;可在“对象资源管理器”窗格中,在“数据库”→“jxsk”→“表”→“odb.T”处右键,在弹出的菜单中选择“选择前1000行”选项,可见其所示内容中已存在通过上述方法新建立的数据,如下图;
15 INSERT INTO语句插入数据至数据库表C
(1) 单击屏幕上方 “工具栏”菜单中的“新建查询”按钮,打开“查询编辑器”窗口,并在“查询编辑器”窗口中输入以下T-SQL语句:
USE jxsk
GO
INSERT INTO C VALUES('C1','程序设计','60')
GO
(2) 单击 “工具栏”中的“执行(x)”按钮,即可执行上述T-SQL语句,如下图;
(3) 在“对象资源管理器”窗格中,在“数据库”→“jxsk”→“表”→“odb.C”处右键,在弹出的菜单中选择“选择前1000行”选项,可见其所示内容中已存在通过上述方法新建立的课程记录,如下图;
(4) 重复上述步骤,将实验指导书对应表格内容全部添加至数据库表C,最终结果如下图;
其中需要将
('C1','程序设计','60')
依次改为
('C2','微机原理','80')
('C3','数字逻辑','60')
('C4','数据结构','80')
('C5','数据库','60')
('C6','编译原理','60')
('C7','操作系统','60')
16 交互式修改数据库表S中数据
(1) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”并右击表S,在弹出的菜单中选择“编辑前200行”;
(2) 在打开的数据库表S中,选中学生“周武”记录的系别字段“DEPT”值“计算机”,将删除“计算机”并输入“信息”,如下图;
(3) 点击数据库表S窗格右上角的“关闭”按钮,以关闭数据库表并保存修改。
17 T-SQL修改数据库表T中数据
(1) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”并右击表T,在弹出的菜单中选择“选择前1000行”可查看表T中内容,
(2) 单击屏幕上方 “工具栏”菜单中的“新建查询”按钮,打开“查询编辑器”窗口,并在“查询编辑器”窗口中输入以下T-SQL语句,如下图:
USE jxsk
GO
UPDATE T SET PROF='副教授' WHERE TN='王平'
GO
(3) 单击 “工具栏”中的“执行(x)”按钮,即可执行上述T-SQL语句;
(4) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”并右击表T,在弹出的菜单中选择“选择前1000行”可查看表T中内容已对应改变。
18 交互式删除数据库表S中数据
(1) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”并右击表S,在弹出的菜单中选择“编辑前200行”;
(2) 在打开的数据表S中,选择学生“周武”记录行左侧的“行选择器”,选中“周武”记录行并右键,在弹出的窗口中选择“删除”选项,如下图;
(3) 在弹出的确认删除对话框中确认删除,如下图。
19 T-SQL修改数据库表T中数据
(1) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”并右击表T,在弹出的菜单中选择“选择前1000行”可查看表T中内容;
(2) 单击屏幕上方 “工具栏”菜单中的“新建查询”按钮,打开“查询编辑器”窗口,并在“查询编辑器”窗口中输入以下T-SQL语句:
USE jxsk
GO
DELETE FROM T WHERE TN='王平'
GO
(3) 单击 “工具栏”中的“执行(x)”按钮,即可执行上述T-SQL语句,如下图;
(4) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”并右击表T,在弹出的菜单中选择“选择前1000行”可查看表T中内容已对应改变,如下图。
20 T-SQL复制数据库表S生成新数据表test1
(1) 单击屏幕上方 “工具栏”菜单中的“新建查询”按钮,打开“查询编辑器”窗口,并在“查询编辑器”窗口中输入以下T-SQL语句:
USE jxsk
GO
SELECT*INTO test1 FROM S
GO
(2) 单击 “工具栏”中的“执行(x)”按钮,即可执行上述T-SQL语句,如下图;
(3) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”,可看到数据库表test1已存在,如下图;
(4) 并可查看其内容,如下图;
21 T-SQL复制数据库表T中“男”同学记录,生成新数据库表test2
(1) 单击屏幕上方 “工具栏”菜单中的“新建查询”按钮,打开“查询编辑器”窗口,并在“查询编辑器”窗口中输入以下T-SQL语句:
USE jxsk
GO
SELECT TN,SEX,AGE,PROF into test2 FROM T
WHERE SEX='男'
GO
(2) 单击 “工具栏”中的“执行(x)”按钮,即可执行上述T-SQL语句,如下图;
(3) 在“对象资源管理器”窗格中,选择“数据库”→“jxsk”→“表”,可看到数据库表test2已存在,如下图。
至此,大功告成。