![SQL应用开发参考手册](https://wfqqreader-1252317822.image.myqcloud.com/cover/868/621868/b_621868.jpg)
第2章
数据库的基本操作
2.1 创建数据库对象
本节主要以SQL Server数据库为例讲解如何创建数据库对象。
2.1.1 创建数据表
在使用数据库的过程中,接触最多的就是数据库中的表,表中存放了数据库中的所有数据,所以表是SQL Server数据库系统的基本信息存储结构,也是数据库中最重要的部分,管理好表自然就管理好了数据库。
创建表的过程就是定义表列的过程,下面在Microsoft SQL Server Management Studio中创建数据表mrkj,具体操作步骤如下。
(1)启动"Microsoft SQL Server Management Studio",并连接到SQL Server 2008中的数据库。
(2)鼠标右键单击“表”选项,在弹出的快捷菜单中选择“新建表”命令,如图2.1所示。
(3)进入“添加表”对话框,如图2.2所示。在列表框中填写所需要的字段名,单击“保存”按钮,即添加表成功。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0427-01.jpg?sign=1739279690-y5OcOhV5wv7YnE5F3WsQ5XVlMVvubVtw-0-3b481920e175c98d6db8af562594cb2e)
图2.1 新建表
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0438-01.jpg?sign=1739279690-WRABkQxcY6pk2M1qZ2wy9Hf51KXeAGRT-0-015d5a68079d929cf59405d5960373fb)
图2.2 创建数据表名称
2.1.2 创建视图
视图设计器以可视化的形式创建视图,视图设计器分为四个部分。
●“关系图区”以图形方式显示正在查询的表和其他表结构化对象,如视图。同时,也显示它们之间的连接关系。每个矩形代表一个表或表结构化对象,并显示可用的数据列以及表示每列用于查询的图标,如排序图标等。矩形之间的连接线表示两个表之间的连接。
●“网格区”是一个类似电子表格的网格,用户可以在其中指定视图的选项,如在视图中显示哪些数据列、哪些行等。通过“网格区”可以指定要显示列的别名、列所属表、计算列的表达式、查询的排序次序、搜索、条件以及分组准则等。
●“SQL区”显示用于查询视图的SQL语句。可以对设计器自动生成的SQL语句进行编辑,也可以输入自己的SQL语句。对于不能用“关系图区”和“网格区”创建的SQL语句(如联合查询),就可以在该区写入相应的SQL语句。
●“结果区”显示最近执行的选择查询的结果。可以通过编辑该网格单元中的值对数据库进行修改,而且可以添加或删除行。在视图设计器中,“结果区”也可以显示视图的定义信息。
下面在Microsoft SQL Server Management Studio中创建视图"View_Stu",具体操作步骤如下。
(1)启动"Microsoft SQL Server Management Studio",并连接到SQL Server 2008中的数据库。
(2)在“对象资源浏览器”中展开“数据库”节点,展开指定的数据库“db_2008”。
(3)鼠标右键单击“视图”选项,在弹出的快捷菜单中选择“新建视图”命令,如图2.3所示。
(4)弹出“添加表”对话框,如图2.4所示。在列表框中选择学生信息表"student",单击“添加”按钮,然后单击“关闭”按钮。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0449-01.jpg?sign=1739279690-WoLQMwFdX5FJUCSHaxsE5HZ1hXdl6dcX-0-e67b13a859994e730bae48c4a80344f5)
图2.3 新建视图
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0460-01.jpg?sign=1739279690-ClVKpq70i7pjIwWGKNCGksiiNsYY6pIL-0-f4c28d4b7503e18ba0051af081e9537f)
图2.4 “添加表”对话框
(5)进入“视图设计器”界面,如图2.5所示。在“表选择区”中选择“所有列”选项,单击执行按钮,视图结果区中自动显示视图结果。
(6)单击工具栏中的“保存”按钮,弹出“选择名称”对话框,如图2.6所示。在“输入视图名称”文本框中输入视图名称"View_student",单击“确定”按钮即可保存该视图。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0471-01.jpg?sign=1739279690-CpboJEkiLHe5L3iaLDn3vKo67sohbdk3-0-eafcec3b42d953bc65c0132e6f3dee17)
图2.5 视图设计器
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0482-01.jpg?sign=1739279690-iDiS4HLIEUxGvAk7UjduLTablmPdoPHj-0-e644e88c3b067436e2068b1397558516)
图2.6 “选择名称”对话框
2.1.3 创建存储过程
下面在Microsoft SQL Server Management Studio中创建存储过程"Proc_Stu",要求完成以下功能:在Student表中查询男生的Sno、Sex、Sage这几个字段的内容。具体操作步骤如下。
(1)启动"Microsoft SQL Server Management Studio",并连接到SQL Server 2008中的数据库。
(2)在“对象资源管理器”中选择指定的服务器和数据库,展开数据库的“可编程性”节点,鼠标右键单击“存储过程”,在弹出的快捷菜单中选择“新建存储过程”命令,如图2.7所示。
(3)在弹出的“连接到数据库引擎”对话框中,单击“连接”按钮,便出现创建存储过程的窗口,如图2.8所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0493-01.jpg?sign=1739279690-F3XwfMhe1zneHSx79D6Z5Ik899qLT7YD-0-f805a03d9382b90b299ad4acae53bd5f)
图2.7 选择“新建存储过程”命令
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0504-01.jpg?sign=1739279690-zN2lC6B70EhOpDtvQOPG6J6XGWNLfqrF-0-aced2438b3ba8bd331731dd66af05548)
图2.8 创建存储过程窗口
(4)在创建存储过程的窗口中,将对应的SELECT语句修改为以下语句:
SELECT Sno,Sname,Sex,Sage FROM Student WHERE Sex='男'
2.1.4 创建触发器
在SQL Server Management Studio中创建触发器的操作步骤如下。
(1)在操作系统的任务栏中依次选择“开始”→“所有程序”→“Microsoft SQL Server 2008”→"SQL Server Management Studio"。
(2)在"Microsoft SQL Server Management Studio"窗口中选择指定数据库中的指定表,展开表节点,选择“触发器”,单击鼠标右键,在弹出的快捷菜单中选择“新建触发器”命令,如图2.9所示。
(3)在"Microsoft SQL Server Management Studio"窗口右侧显示创建触发器的模板,如图2.10所示。然后根据该模板编写相应的SQL语句即可。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0508-01.jpg?sign=1739279690-uxsoTtu1mOn3s0cjRLv4YKC5dfqGxexE-0-eb604646a2dd7942e963917bbf4f0d3e)
图2.9 选择“新建触发器”命令
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0428-01.jpg?sign=1739279690-lBEos0MYVEkLwZ5kjuUks1NarvV6DrXp-0-b64125bf091af27a713d89c2677b9cc6)
图2.10 创建触发器的模板
2.2 备份和恢复数据库
在数据库使用过程中,数据的备份和恢复工作是保证数据安全性的一个重要操作。科学地管理数据库,可以从多种故障中恢复数据,例如媒体故障、用户错误及服务器永久丢失。同样也可以使用备份和恢复数据库的方法,实现两个数据库之间的复制工作。
备份数据库是指对数据库或事务日志的复制,当系统、磁盘或数据库文件损坏时,可以使用备份文件进行恢复,防止数据丢失。
恢复数据库是在备份数据库基础上的操作,只有在数据库备份后,才能通过备份文件对数据库进行还原操作。在计算机受到病毒的破坏、磁盘损坏等原因导致数据丢失、不完整或数据错误时,通过对数据库的恢复,将数据恢复到备份数据库中的某一时间,以减少用户的损失。本节将介绍SQL Server数据库和Oracle数据库的备份和还原。
2.2.1 备份SQL Server数据库
“备份数据库”任务可执行不同类型的SQL Server数据库备份(完整备份、差异备份和文件备份)。
下面以备份数据库“MRKJ”为例介绍如何备份数据库。具体操作步骤如下。
(1)启动"Microsoft SQL Server Management Studio",并连接到SQL Server 2008中的数据库。在“对象资源管理器”中展开“数据库”节点。
(2)鼠标右键单击要备份的数据库“MRKJ”,在弹出的快捷菜单中选择“任务”→“备份”命令,如图2.11所示。
(3)弹出“备份数据库”对话框,如图2.12所示。在“常规”选项卡中设置备份数据库的数据源和备份地址。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0429-01.jpg?sign=1739279690-N7fnEu2S8A1PzZIG3wHSpPNGH2o9B2Sd-0-69846ab7ff1c4ce9dd96fc7dfdef9ef3)
图2.11 选择备份数据库
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0430-01.jpg?sign=1739279690-y3sDSsnO9uewpquwNSoCRbxUWZWyfoH9-0-c44dda167a774420965eb1fc94061aa5)
图2.12 “备份数据库”对话框
在该对话框中设置以下几项:
●在“数据库”下拉列表框中验证数据库名,如果需要也可以更改备份的数据库名称。
●在“备份类型”下拉列表框中选择数据库备份的类型,这里选择“完整”备份。同时选择“备份组件”区域中的“数据库”单选框,备份整个数据库。
●根据需要通过“备份集过期时间”选项设置备份的过期天数。取值范围为0~9999,0表示备份集将永不过期。
在“目标”区域中单击“添加”按钮,弹出“选择备份目标”对话框,如图2.13所示,这里选择“文件名”单选框,单击其后的浏览按钮,选择文件名及其路径。
(4)单击“确定”按钮,返回到“备份数据库”对话框。选择“选项”选项卡,如图2.14所示。这里在“覆盖媒体”区域中选择“备份到现有媒体集”→“追加到现有备份集”单选框,把备份文件追加到指定介质上,同时保留以前的所有备份。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0431-01.jpg?sign=1739279690-NtNDInnWtd9z2jT1TLGjhEyCmg2Oj4ED-0-79324ee849eec47ed3e7a3ec04846c06)
图2.13 “选择备份目标”对话框
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0432-01.jpg?sign=1739279690-NsnFUKcLDUIsgvvhoEpVL10a8ylwFNAN-0-57f7945bb6b2862576691959cc6a1949)
图2.14 “备份数据库”对话框
(5)单击“确定”按钮,系统提示备份成功的提示信息,如图2.15所示。单击“确定”按钮后即可完成数据库的完整备份。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0433-01.jpg?sign=1739279690-mYEFjqy4mMQ44JOw4mX3VqRg921Ph1P4-0-d2bc12d49206ff0326ad91c1be744e32)
图2.15 提示信息
2.2.2 还原SQL Server数据库
执行数据库备份的目的是便于进行数据恢复。如果发生机器错误、用户操作错误等,用户就可以对备份过的数据库进行恢复。
下面以还原数据库“MRKJ”为例介绍如何恢复数据库。具体操作步骤如下。
(1)启动Microsoft SQL Server Management Studio,并连接到SQL Server 2008中的数据库。在“对象资源管理器”中展开“数据库”节点。
(2)鼠标右键单击要恢复的数据库“MRKJ”,在弹出的快捷菜单中选择“任务”→“还原”→“数据库”命令,如图2.16所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0434-01.jpg?sign=1739279690-5N03A3g023BgVDBYOZF9fWxGarVPtMHZ-0-e0d59d4c74f693774aa26a13e28c024c)
图2.16 选择还原数据库
(3)弹出“还原数据库”对话框,在该对话框的“常规”选项卡中设置还原的目标和源数据库,在该对话框中保留默认设置即可,如图2.17所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0435-01.jpg?sign=1739279690-cQufaUJt90QKtkmxrSmUiPTcUsZA4Dj5-0-fe49e9e728a24d1e41608e188ce378cb)
图2.17 还原数据库
(4)选择“选项”选项卡,设置还原操作时采用的形式以及恢复完成后的状态,如图2.18所示。这里在“还原选项”区域中选中“覆盖现有数据库”复选框,以便在恢复时覆盖现有数据库及其相关文件。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0436-01.jpg?sign=1739279690-LyBgz5WEfpRVcNUrBXslNIzIf68RrsQS-0-91acac6ef676b67ea39fbaa61594accb)
图2.18 “选项”选项卡
(5)单击“确定”按钮,系统提示还原成功的提示信息,如图2.19所示。单击“确定”按钮后即可完成数据库的还原操作。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0437-01.jpg?sign=1739279690-QuHcWnbVvGzl567ySVFF2a5fCO9wraMN-0-032b57f4eca9fb60942c1f5dd3b94b94)
图2.19 提示信息
2.2.3 备份Oracle数据库
以下操作实现的是使用Oracle EM管理工具备份Oracle DBMR数据库的操作。
(1)在浏览器的URL中输入“http://主机名称:端口号/em”(例如本示例中为http://192.168.1.23:5501/em)进入EM登录界面,如图2.20所示。在该页面中输入用户名和口令,连接身份选择"Normal"。
(2)进入EM界面后,单击EM的“数据库实例”→“维护”标签,进入图2.21所示的“维护”选项卡页面。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0439-01.jpg?sign=1739279690-z7BlOOBlcJygnZTB8kJPgX7T3R4BFXQC-0-c17fc8118292157eae16737ab0ec54d0)
图2.20 进入EM界面的登录窗口
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0440-01.jpg?sign=1739279690-ATBZxzbDj9EDRtl9VYlPWM0PsOKMw2bn-0-b666934e9330f45315ae048418e71b34)
图2.21 “维护”选项卡页面
(3)在备份Oracle数据库前,需要对要备份的数据库进行恢复设置。单击图2.21中“备份/恢复设置”区域中的“恢复设置”选项,进入图2.22所示的页面。在该页面中需要选中“介质恢复”区域中的“ARCHIVELOG模式”(归档模式)复选框,然后单击页面右上方的“应用”按钮。
(4)完成以上操作后,将返回图2.21所示的页面,在该页面中单击“备份/恢复”区域中的“调度备份”选项,进入图2.23所示的页面。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0441-01.jpg?sign=1739279690-F2BYgrlHskHEPNENV4mhMqtVLxluBWad-0-2f8b12e54c77dfa00dfc0433023868a5)
图2.22 “恢复设置”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0442-01.jpg?sign=1739279690-0bLjfY7dPb97tl4BTwWt56NcXeNF9bYa-0-b3511d3badc172baf4a2e63eea4c2e33)
图2.23 “调度备份”页面
在“定制备份”区域中选择要备份的对象,这里保持其默认设置即备份整个数据库。
(5)单击图2.23(“调度备份”页面)中的“调度定制备份”按钮,进入图2.24所示的“调度定制备份:选项”页面。
在“备份类型”选项区域中选择备份类型为“完全备份”,其设置保持默认。
(6)单击图2.24页面右侧的“下一步”按钮,进入图2.25所示的“调度定制备份:设置”页面。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0443-01.jpg?sign=1739279690-By8sohfR0wEwWl0JprxZkqkXNyvdLfeq-0-9b3a752b40eb2571433301775a0b6420)
图2.24 “调度定制备份:选项”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0444-01.jpg?sign=1739279690-KItryP73zqATU1eOHlSPoJEF9zOeXvaR-0-793d041f565b3602138aa3b0f14816d7)
图2.25 “调度定制备份:设置”页面
这里需要注意的是数据库的磁盘备份位置是安装Oracle数据库时的默认路径,可以更改,操作步骤如下。
(1)单击图2.21“备份/恢复设置”区域中的“备份设置”选项,进入图2.26所示的页面。
(2)在“磁盘备份位置”文本框内输入备份的磁盘路径(例如E:\backup),然后单击页面右侧的“测试磁盘备份”按钮,如果测试成功将显示“磁盘备份测试成功”信息。设置完成后,磁盘备份位置就会更改为:E:\backup。
(3)单击图2.25页面右侧的“下一步”按钮,进入图2.27所示的“调度定制备份:调度”页面。保持该页面中的默认设置。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0445-01.jpg?sign=1739279690-YirOUAWUfrCBuQYlUVPcdg09pia2QOly-0-9beefc64460f5bcd63da81298bd5d9ba)
图2.26 “备份设置”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0446-01.jpg?sign=1739279690-ocLa4omhMyylFXPTS3JIqLoNIJIB1Q1u-0-bfa175dfed2a97cb7e5e94b94e174ba0)
图2.27 “调度定制备份:调度”页面
(4)单击图2.26页面右侧的“下一步”按钮,进入图2.28所示的“调度定制备份:复查”页面。保持该页面中的默认设置。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0447-01.jpg?sign=1739279690-tgN6UCvsGvElGjzPEklwcrnuaXtuliPo-0-288309bd4907b40bdae4b40f6c9f4179)
图2.28 “调度定制备份:复查”页面
(5)单击图2.28页面右侧的“提交作业”按钮,进入图2.29所示的“已成功提交作业”页面。单击该页面中的“查看作业”按钮,进入“作业活动”页面,如图2.30所示,可以在该页面“结果”区域中的“状态(执行)”选项中查看Oracle数据库的备份是否成功(本示例的执行状态为“成功”)。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0448-01.jpg?sign=1739279690-zbookT2J3kjBRqSJSzydUAuiasIb5i1w-0-cf22954119be654f51ffe75cbe2fa5f0)
图2.29 “已成功提交作业”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0450-01.jpg?sign=1739279690-5aKskpjQ8695AnJzsvNl8WOtnnvV9vlm-0-9a6b61864254ae565de5f48b1daa81b5)
图2.30 “作业活动”页面
2.2.4 还原Oracle数据库
以下操作实现的是使用Oracle EM管理工具还原Oracle DBMR数据库的操作。
(1)在浏览器的URL中输入:“http://主机名称:端口号/em”(例如本示例为http://192.168.1.23:5501/em)进入EM界面。
(2)进入EM界面后,单击EM的“数据库实例”→“维护”标签,进入图2.31所示的“维护”选项卡页面。在该页面的“高可用性”区域中单击“执行恢复”选项。
(3)完成以上操作后,进入“执行恢复”页面,如图2.32所示。在“整个数据库恢复”区域中选中“恢复到当前时间或过去的某个时间点”单选框,然后单击该页面右侧的“执行整个数据库恢复”按钮,其他选项保持默认设置。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0451-01.jpg?sign=1739279690-EZaQVPeBY7OUW4A3CkX1WNeVNsGIMAjK-0-b2a5ea95c3ed4e87c341d9b2c894afc0)
图2.31 “维护”选项卡页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0452-01.jpg?sign=1739279690-UNNcSe757O1cgqINySomdM2sOWllz004-0-668663005c31a69e400532ea51adaf0c)
图2.32 “执行恢复”页面
(4)完成以上操作后,进入“确认”页面,如图2.33所示。在该页面中将有如下提示信息:“数据库当前处于OPEN状态和ARCHIVELOG模式。要执行整个数据库恢复,数据库首先关闭,然后进入MOUNTED状态。是否确实要立即关闭数据库?”。单击该页面中的“是”按钮,关闭连接的数据库。
(5)关闭所连接的数据库后,将进入数据库示例:DBMR的“维护”页面,如图2.34所示。单击该页面中的“执行恢复”选项。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0453-01.jpg?sign=1739279690-c8N9QNE8pstNLJuXdKzoIdG8jgBJt8we-0-f5ec7a4cca758594e6465626278ff423)
图2.33 “确认”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0454-01.jpg?sign=1739279690-zfLQyqzDkrosPLO19QFfwN13YyN4sHwy-0-6cdeff404c5e6f4890ab4d98e17507fe)
图2.34 “维护”页面
(6)完成以上操作后,将进入“执行恢复”页面,如图2.35所示。此时该页面将显示数据库当前状态为MOUNTED(归档模式)。在“主机身份证明”区域中的“用户名”和“口令”文本框内分别输入主机的用户名和口令。
(7)单击图2.35页面右侧的“执行整个数据库恢复”按钮,进入图2.36所示的“执行恢复:结果”页面。此时可以查看到数据库恢复操作成功。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0455-01.jpg?sign=1739279690-bIMGtVpZ3rQ478HZ1e98qf75Y7arrvDj-0-2dcfb09bbff5ac88a27684a60a00fc2e)
图2.35 归档模式(MOUNTED)下的“执行恢复”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0456-01.jpg?sign=1739279690-SyqiUvL1ApeMRAoYHEpURwpO2h365mM4-0-edc05ecce5f5e55799330293ad470aed)
图2.36 “执行恢复:结果”页面
2.3 导入和导出数据
2.3.1 从SQL Server中导入数据表
导入数据是从Microsoft SQL Server的外部数据源中检索数据,然后将数据插入到SQL Server表的过程。
下面主要介绍通过导入和导出将SQL Server数据库“db_2008”中的部分数据表导入到SQL Server数据库“MRKJ”中。具体操作步骤如下。
(1)启动"Microsoft SQL Server Management Studio",并连接到SQL Server 2008中的数据库。在“对象资源管理器”中展开“数据库”节点。
(2)鼠标右键单击数据库“MRKJ”,在弹出的快捷菜单中选择“任务”→“导入数据”命令,如图2.37所示,此时将打开“SQL Server导入和导出向导”窗口。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0457-01.jpg?sign=1739279690-czx246rKuD2H9Fgt5rPtbkrQD0XhvTxe-0-ae02cb6b28371f0052a36b7cae721f48)
图2.37 选择导入数据
(3)单击“下一步”按钮,打开“选择数据源”窗口,在该窗口中首先选择数据源,然后选择服务器名称,再选择身份验证方式,最后选择导入数据的源数据库,这里选择“db_2008”数据库,如图2.38所示。
(4)单击“下一步”按钮,打开“选择目标”窗口,在该窗口中选择要将数据库复制到何处,如图2.39所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0458-01.jpg?sign=1739279690-P5ElAVNIurA6706hDPWapgCKji10cvX3-0-2eeb7704452a5d32da70b616a7d04ee7)
图2.38 “选择数据源”窗口
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0459-01.jpg?sign=1739279690-d0bkpqr4WZJ1Jp2DNgp3ZxjT6wYkfKgc-0-7af9d7979ca5d91cf7bb4b8ec5817197)
图2.39 “选择目标”窗口
说明 在选择要将数据库复制到何处时,首先需要输入服务器名称,然后选择身份验证方式,并输入用户名和密码,最后选择数据库即可。
(5)单击“下一步”按钮,打开“指定表复制或查询”窗口,在该窗口中选择是从指定数据源复制一个或多个表和视图,还是从数据源复制查询结果,这里选中“复制一个或多个表或视图的数据”单选框,如图2.40所示。
(6)单击“下一步”按钮,打开“选择源表和源视图”窗口,在该窗口中选择一个或多个要复制的表或视图,这里选择"Employee"表,如图2.41所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0461-01.jpg?sign=1739279690-p0NNgmqgyxqreteSl0sSI0UlRmyCdJ9H-0-d80e30117eb38f9ec84737fbd6cd8194)
图2.40 “指定表复制或查询”窗口
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0462-01.jpg?sign=1739279690-OZf1ftKdLEmLP0wwg55hwsfmxUH6lXdR-0-a34c7261244deeb527719c861d221db1)
图2.41 “选择源表和源视图”窗口
(7)单击“下一步”按钮,打开“保存并运行包”窗口,该窗口用于提示是否选择SSIS包,如图2.42所示。
(8)单击“下一步”按钮,打开“完成该向导”窗口,如图2.43所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0463-01.jpg?sign=1739279690-UBWZkfRqw3KpntHUW6bTOd2U0QcxEXEE-0-076f241c7ba8bcb7a86c3fb504504d90)
图2.42 “保存并运行包”窗口
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0464-01.jpg?sign=1739279690-dyLAyrAHO8aslMWHjwxziMltDinEF29c-0-7ec5ba120f9ecbb461485315a7e29978)
图2.43 “完成该向导”窗口
(9)单击“完成”按钮开始执行复制操作,打开“执行成功”窗口,如图2.44所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0465-01.jpg?sign=1739279690-awb6Q49Ph35upjWNbYnsTuHbmoGEWGcb-0-8d60efae80fdc8612c0f6b5974ac18b3)
图2.44 “执行成功”窗口
(10)最后单击“关闭”按钮,完成数据表的导入操作。
(11)展开数据库“MRKJ”,单击“表”选项,即可从数据库中查看从数据库“db_2008”中导入的数据表,如图2.45所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0466-01.jpg?sign=1739279690-kZSCKKVv3Nh8A4Bvx6tJ4911Gf7sn0NN-0-b73d44e27ec666b237a332fa584cd0b1)
图2.45 导入的数据表
2.3.2 从SQL Server中导出数据表
导出数据是将SQL Server实例中的数据设为某些用户指定格式的过程,如将SQL Server表的内容复制到Excel表格中。
下面主要介绍通过导入导出向导将SQL Server数据库“db_2008”中的部分数据表导出到Excel表格中。具体操作步骤如下。
(1)启动"Microsoft SQL Server Management Studio",并连接到SQL Server 2008中的数据库。在“对象资源管理器”中展开“数据库”节点。
(2)鼠标右键单击数据库“db_2008”,在弹出的快捷菜单中选择“任务”→“导出数据”命令,如图2.46所示。此时将打开“选择数据源”窗口,在该窗口中选择要从中复制数据的源,如图2.47所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0467-01.jpg?sign=1739279690-RjhW2SoxS3yb01yZUzn32T9lJWhab0Ji-0-5474597d769db06aedc7032acf418e8c)
图2.46 选择导出数据
(3)单击“下一步”按钮,打开“选择目标”窗口,在该窗口中选择要将数据库复制到何处。在该窗口中分别选择数据源类型和Excel文件的位置,如图2.48所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0468-01.jpg?sign=1739279690-OTVbcIYdw0GuxZvaZDtVuDxi9eEBdSt0-0-ba50693ffe80c0db6e96969f6c4924a7)
图2.47 “选择数据源”窗口
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0469-01.jpg?sign=1739279690-lpVDbSfRdAUvzSx6g88BozanxGgVCmuv-0-81d5b0a4a43d893e58576ee8c3aa35c1)
图2.48 “选择目标”窗口
(4)单击“下一步”按钮,打开“指定表复制或查询”窗口,在该窗口中选择是从指定数据源复制一个或多个表和视图,还是从数据源复制查询结果,这里选中“复制一个或多个表或视图的数据”单选框,如图2.49所示。
(5)单击“下一步”按钮,打开“选择源表和源视图”窗口,在该窗口中选择一个或多个要复制的表或视图,这里选择"Employee"表和"Student"表,如图2.50所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0470-01.jpg?sign=1739279690-xNge6CCcy1tGLTVQccuIxvBtFz2cQcOF-0-92cc534169bf3873bbedd25bc2bc0533)
图2.49 “指定表复制或查询”窗口
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0472-01.jpg?sign=1739279690-VkjSCVhiXE9T2d0L0dYvauRsfQZSqZwv-0-04e0b44fd865b7cba07c2a36734b25ce)
图2.50 “选择源表和源视图”窗口
(6)单击“下一步”按钮,打开“保存并运行包”窗口,该窗口用于提示是否选择SSIS包,如图2.51所示。
(7)单击“下一步”按钮,打开“完成该向导”窗口,如图2.52所示。
(8)单击“完成”按钮开始执行复制操作,打开“执行成功”窗口,如图2.53所示。
(9)最后单击“关闭”按钮,完成数据表的导入操作。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0473-01.jpg?sign=1739279690-Qe5otSJn5rld2OhQnfDZfiLzCFZhRZHY-0-e0a412b334f4138e13585f7bd17461d3)
图2.51 “保存并运行包”窗口
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0474-01.jpg?sign=1739279690-DBwAxuP0b6OMDw0ilsEZ9WQtCS8ifiBF-0-7804af288b1e7c1dd7f34b690308ba31)
图2.52 “完成该向导”窗口
(10)打开book1.Excel,即可查看从数据库“db_2008”中导入的数据表中的内容,如图2.54所示,图2.55为student表中的内容。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0475-01.jpg?sign=1739279690-PXUO1BwWYQ7OvmNd3FTmrD6BrqSXwaeg-0-8803cec8e8f93ab50cfa765b87655178)
图2.53 “执行成功”窗口
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0476-01.jpg?sign=1739279690-8gXh4upEeK1eucpF9G6jLWhrW5jL1E0u-0-d20ad279ae2903d8d4450bef75e795e1)
图2.54 Excel文件中的内容
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0477-01.jpg?sign=1739279690-J4YCnCRFZpRhzIqCISCpUQYo3rmuZkaS-0-402f54b55f6e0cf1fa1503bea99a2990)
图2.55 student表中的内容
2.3.3 从Oracle中导出数据表
从Oracle数据库中导出数据表使用EM管理数据文件的方法。
以下操作演示的是在数据文件管理页面进行导出Oracle数据库DBMR中表的操作。
(1)进入EM主页面后单击“维护”标签,进入“维护”选项卡页面,选择“导出到导出文件”选项,如图2.56所示。
(2)完成以上操作后,进入图2.57所示的页面,在该页面中选择导出类型:“表”,然后单击该页面中的“继续”按钮。
(3)进入“导出:添加表”页面,如图2.58所示。在该页面中单击方案图标,将弹出如图2.59所示的页面,选择可用方案中名为"MR"的方案。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0478-01.jpg?sign=1739279690-SgzqeRY0lXYnzRJjpxyA9bBhTAO1tSKi-0-0299d8941c6a564989b0ff74771705f6)
图2.56 EM主页面“维护”页面的“导出到导出文件”选项
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0479-01.jpg?sign=1739279690-MQaZJNnqpYMeWMtBJF88F1BeppPQNgv1-0-fa55acd7d805ee39bc49cce97d5ae570)
图2.57 选择数据库DBMR的导出类型
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0480-01.jpg?sign=1739279690-rqvjCVpKumvAuzgLwj0sXkH32AeDmqc4-0-a1f5a2008b4b58b168d516805d427227)
图2.58 “导出:添加表”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0481-01.jpg?sign=1739279690-QoIQOLfyJfwUdSqTCyoFlQ5pql8x2YRC-0-b6cf3263d09f19038fd4cdfefb404417)
图2.59 选择可用方案
(4)选择方案"MR"后,单击该页面中的“开始”按钮,将会在页面中的“搜索结果”中显示要导出的方案MR下的所有数据表,如图2.60所示。这里选择该方案下的所有表,然后单击页面中的“选择”按钮,进入下一步操作。
(5)进入“导出:表”页面,单击“下一步”按钮即可,如图2.61所示。
(6)完成上一步操作后,进入“导出:选项”页面,如图2.62所示。在“可选文件”区域内选择“目录对象”中创建的"MRExport",单击该页面上部的“下一步”按钮。
(7)进入“导出:文件”页面,如图2.63所示。在该页面“选择目录对象”区域中选择创建的目录对象"MRExport",然后单击该页面上部的“下一步”按钮。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0483-01.jpg?sign=1739279690-qZYhyq8i9z3d78qKtVVThLGkvviHL1o9-0-bd932c878f1e2e79fbc6e7cab7df6860)
图2.60 选择要导出的数据表
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0484-01.jpg?sign=1739279690-pqLGv6Z6NzEMODhufAGEG43ddFwKnOnj-0-dc880fcf7ca78f90bd66d97fe99ffaf4)
图2.61 “导出:表”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0485-01.jpg?sign=1739279690-4iLXY0CsUg4BhhbSD3plRdFETX8NCD3f-0-30b1e1a5f6c5031838ca15e71219fd58)
图2.62 “导出:选项”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0486-01.jpg?sign=1739279690-pXPZLWDQ8LN8Lb2Aw1pHGjFv7q56Sr82-0-88b8772b531901e70397ebb09ab164a7)
图2.63 “导出:文件”页面
(8)完成以上操作,进入“导出:调度”页面,如图2.64所示。在该页面的“作业参数”区域内可以填写“作业名称”和“说明”两部分内容,其他选项选择默认即可,然后单击页面上部的“下一步”按钮。
(9)进入“导出:复查”页面,如图2.65所示,可以对所要导出的数据表进行复查工作。单击页面上的“提交作业”按钮,即可进入作业创建过程,如图2.66所示。
(10)完成以上操作后,查看“作业活动”结果,可以查看到从Oracle数据库中导出DBMR数据库表为执行成功状态,如图2.67所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0487-01.jpg?sign=1739279690-29I83Ulghd6NspOO8ZcYsQPpeJVnIzXq-0-2c907971b46e63d017ee9617cc9716a0)
图2.64 “导出:调度”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0488-01.jpg?sign=1739279690-DboDt3mpJAC8XUbFia8cPKFAClffbHOk-0-dc48911b42b9ff7dbb94e41f733511fc)
图2.65 “导出:复查”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0489-01.jpg?sign=1739279690-flYH5PuAI5ssmnD898YpCiRzDyL7j3nS-0-9f16b1287cd5e29bcdd1b86dc1d11c86)
图2.66 作业创建过程
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0490-01.jpg?sign=1739279690-mlHK31QoEZu0fjXmpIwDImUuDDqfif56-0-de7133ec31871e86d7646e5ec2c83fd6)
图2.67 作业活动结果
2.3.4 从Oracle中导入数据表
从Oracle数据库中导入数据表使用EM管理数据文件的方法。
以下操作演示的是将本地磁盘中导出的Oracle数据库表导入到Oracle dbsql数据库中。
(1)进入EM主页面后单击“维护”标签,进入“维护”选项卡页面,选择“从导出文件导入”选项,如图2.68所示。
(2)进入“导入:文件”页面,如图2.69所示。首先选择文件“导入类型”为表,然后在“文件”区域内的“选择目录对象”下拉列表框中选择名称为"mr"的目录对象。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0491-01.jpg?sign=1739279690-oZda1BSZ5GEonnbMFofDwyz02F5rYIYS-0-c7986775d0d1f429cd34f6fa85348682)
图2.68 选择“从导出文件导入”选项
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0492-01.jpg?sign=1739279690-VIpJjYYhylGQutgK2tD8tFtZ4hH1euO0-0-760782901dcc4260ff93b7a8f7f3faeb)
图2.69 “导入:文件”页面
这里需要强调的是,在创建目录对象时,其路径的选择要填写所要导入文件的物理路径。
(3)完成以上操作后,进入“导入:处理:读取导入文件”页面,如图2.70所示。完成此操作后此页将自动跳转到下一页。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0494-01.jpg?sign=1739279690-45WOc83fqf94cHcXq08pgC9HXfmcC1Vb-0-9129401bc9f73067ae33b7120691cf33)
图2.70 “导入:处理:读取导入文件”页面
(4)接下来共进行五步操作,依次为导入表、重新映射、设置选项、调度、复查。
导入读取成功后,将进入“导入:表”页面,如图2.71所示。在该页面中单击“添加”按钮,进行选择方案操作,本示例选择名称为"MR"的方案,如图2.72所示。
(5)选择可用方案后,单击图2.71页面中的“下一步”按钮,进入“导入:添加表”页面,如图2.73所示。在该页面中,首先在“搜索”选项区域内单击图标,选择可用的方案(本示例选择的是名称为"MR"的方案),注意选择的方案必须在Oracle数据库中存在,然后单击页面中的“开始”按钮,在“搜索结果”选项区域内显示该方案下所有的数据表。
单击“搜索结果”区域中的“全选”按钮,导出该方案下的所有数据表。完成以上操作后,单击界面中的“选择”按钮,进入“导入:表”页面,如图2.74所示。
(6)在“导入:表”页面中保持其默认设置,单击页面中的“下一步”按钮,进入“导入:重新映射”页面,如图2.75所示。
在该页面的“重新映射方案”区域内单击“添加另一行”按钮(通过此操作用户可以将一个方案中的数据导入到另一个方案中),本示例选择的目标方案名称为“SH”,如图2.76所示。
其他设置选择默认,单击该页面中的“下一步”按钮。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0495-01.jpg?sign=1739279690-6Jhb2CPjPgQBrAQsgqZqcEdi5J82E4ro-0-bc714190500a841eb9e395077df7db8f)
图2.71 “导入:表”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0496-01.jpg?sign=1739279690-1Pxx0cWXSBETxA5djqlmWUTaWwVvLU8A-0-4912bd2d25ff3eefa22d1be2d5a56c22)
图2.72 “搜索和选择:可用方案”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0497-01.jpg?sign=1739279690-SiiMEnq3JnQrJ4rp3Hwi1GDuOBegGo19-0-a791a080fd15ba409970fd18b319fcc9)
图2.73 “导入:添加表”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0498-01.jpg?sign=1739279690-JQm6by3PXV5f2r4ZkOQqUN4WmE34gD2p-0-915066e7dd4941278a79377bad8cab43)
图2.74 “导入:表”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0499-01.jpg?sign=1739279690-nvdCXsiu5Qzrmv4N2O8NP9yJ0HYQZUPQ-0-cf33598f746dc67b4acf5fb9c71b08ec)
图2.75 “导入:重新映射”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0500-01.jpg?sign=1739279690-GMh4wDniZB5iK0EvPBNlILG7wM15HWAb-0-a57e7076d6e3c83b60b84bd88251940f)
图2.76 选择的目标方案名称为“SH”
(7)完成以上操作,进入“导入:选项”页面,如图2.77所示。在该页面的“可选文件”区域内“目录对象”下拉列表框中选择名称为"Import"的目录对象,其他选项保持默认设置,然后单击页面中的“下一步”按钮。
(8)进入“导入:调度”页面,在该页面中用户可以指定导入作业的名称、说明和开始日期。本示例在“作业名称”文本框中输入“000666000”,如图2.78所示。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0501-01.jpg?sign=1739279690-fdhnOhuYWoAxOwQBTsXuVmF8Ph32Gdcu-0-9a4b6c772264de42bf2a63b35bbf8fae)
图2.77 “导入:选项”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0502-01.jpg?sign=1739279690-XJRSpQCUsL619NSBMYBY8mp9c79Aftxa-0-8441a2941feeda94bea2d41b67d1509f)
图2.78 “导入:调度”页面
(9)完成以上所有操作后,将进入最后一步“导入:复查”页面,如图2.79所示,可以对导入表的导入类型、日志文件等进行查看。然后单击该界面上的“提交作业”按钮,创建作业。此时,将进入“导入:正在进行中”页面,如图2.80所示。系统提示“提交作业已在处理中,完成此操作可能需要一段时间”,该操作完成后将自动跳转到下一页。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0503-01.jpg?sign=1739279690-U8dJaXoVtRygBL9AfmZcaIqs1d2pItEd-0-9ced0056f0dfe17fab2763277051937a)
图2.79 “导入:复查”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0505-01.jpg?sign=1739279690-8q0TdH4Ha2s8oaOUmEm3FBBOR460Zrwy-0-5378a0ede3e4275030baccfb3b41eef7)
图2.80 “导入:正在进行中”页面
(10)如果提交的作业成功处理后,将会显示“已成功创建作业000666000”信息,如图2.81所示,在“结果”区域中的“状态(执行)”内会看到“已调度”状态。
(11)完成以上所有操作后,可以在EM管理工具的“维护”页面中查看作业的运行情况,如图2.82所示,在“执行数”区域内可以看到作业执行状态为成功状态。至此,从Oracle数据库中导入数据表的操作全部完成。
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0506-01.jpg?sign=1739279690-w8W3fE2wtnUoNBEXVeVF68KEQ4ZVI4Hl-0-f91971eb3914df44accdc9b45e99ad15)
图2.81 “作业活动”页面
![](https://epubservercos.yuewen.com/F2F51D/3590852503612601/epubprivate/OEBPS/Images/Figure-0507-01.jpg?sign=1739279690-dmXwXShSXVVGcn9zXcQaAoZQU0ofH2Fg-0-e362dc2603f52517126bc290375380cf)
图2.82 查看导入数据表是否成功