完整SQLServer数据库导出与导入
- 格式:docx
- 大小:231.38 KB
- 文档页数:4
当我们建⽴⼀个数据库时,并且想将分散在各处的不同类型的数据库分类汇总在这个新建的数据库中时,尤其是在进⾏数据检验、净化和转换时,将会⾯临很⼤的挑战。
幸好SQL Server为我们提供了强⼤、丰富的数据导⼊导出功能,并且在导⼊导出的同时可以对数据进⾏灵活的处理。
在SQL Server中主要有三种⽅式导⼊导出数据:使⽤Transact-SQL对数据进⾏处理;调⽤命令⾏⼯具BCP处理数据;使⽤数据转换服务(DTS)对数据进⾏处理。
这三种⽅法各有其特点,下⾯就它们的主要特点进⾏⽐较。
⼀、使⽤⽅式的⽐较 1. 使⽤Transact-SQL进⾏数据导⼊导出 我们很容易看出,Transact-SQL⽅法就是通过 SQL语句⽅式将相同或不同类型的数据库中的数据互相导⼊导出或者汇集在⼀处的⽅法。
如果是在不同的SQL Server数据库之间进⾏数据导⼊导出,那将是⾮常容易做到的。
⼀般可使⽤SELECT INTO FROM和INSERT INTO。
使⽤ SELECT INTO FROM时INTO后跟的表必须存在,也就是说它的功能是在导数据之前先建⽴⼀个空表,然后再将源表中的数据导⼊到新建的空表中,这就相当于表的复制(并不会复制表的索引等信息)。
⽽INSERT INTO的功能是将源数据插⼊到已经存在的表中,可以使⽤它进⾏数据合并,如果要更新已经存在的记录,可以使⽤UPDATE。
SELECT * INTO table2 FROM table1 --table1和table2的表结构相同 INSERT INTO table2 SELECT * FROM table3 --table2和table3的表结构相同 当在异构数据库之间的进⾏数据导⼊导出时,情况会变得复杂得多。
⾸先要解决的是如何打开⾮SQL Server数据库的问题。
在SQL Server中提供了两个函数可以根据各种类型数据库的OLE DB Provider打开并操作这些数据库,这两个函数是OPENDATASOURCE和OPENROWSET。
1、打开本地企业管理器,先创建一个SQL Server注册来远程连接服务器端口SQL Server。
步骤如下图:图1:2、弹出窗口后输入内容。
"总是提示输入登陆名和密码"可选可不选,如图2。
图2:3、注册好服务器后,点击打开。
如果是选择了"总是提示输入登陆名和密码"的话再点了确定后会提示输入用户密码,如图3。
图3:4、进入后,选择到您的数据库,如testdb。
在上面点右键,"所有任务">>"导入数据",如图4。
图4:5、进入DTS导入/导出向导,点击“下一步”按钮继续6、选择数据源,输入数据源所在的数据库服务器名称、用户名、密码和要复制数据的源数据库,点击“下一步”按钮7、选择“在SQL Server数据库之间复制对象和数据”方式,点“下一步”继续图7:8、这一步可以把"包括扩展属性"和"排序规则"两个选择上。
接着去掉左下的"使用默认选项",点击右下角的"选项"来进行配置。
图8:9、图8中点"选项"后会弹出图9,把"复制数据库用户和数据库角色"与"复制对象级权限"两个选项去掉,点确定回到图8接着点"下一步"进到图10。
10、设定调度方式,一般选“立即运行”就可以,然后点“下一步”继续11、点"完成"开始执行。
图11:12、正在进行数据导入中图12:13、如果一切正常,提示成功复制如图13,那就大功告成了。
图13:如果提示导入失败,出现图14情况,这时不要急着点"完成"关闭窗口。
双击中间的"出现错误"会出现详细的失败原因。
图14:错误原因一、没安装SP3补丁如果是出现如图15的报错原因,那么就很有可能是因为您本机的SQL Server 还没有打SP3补丁。
精简版SQL Server 2005 数据库导出、导入办法
1、数据库导出(备份)
选中要备份(导出)数据库—>右击,选择“任务”(即Tasks)—>选择“备份”(即Back up)—>选择“普通”(即General),然后按下图选择操作
然后选择“选项”(即Options),按照下图选择操作,最后选择“确定”(即ok)即可将数据库备份。
2、数据库导入(还原)
首先,将要导入或还原的“.bak”文件放到c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup目录下。
其次,打开SQL Server ,选中要还原的数据库(即要将备份数据库导入的目标数据库)—>右击,选择“任务”(即Tasks)—>选择“还原数据库”(即Restore—>database)—>选择“普通”(即General),然后选择“从设备”(即From device),点击右侧选择目标框,会弹出一个窗口如下图所示
选择添加,会出现如下窗口
从中选择要还原的数据库备份,然后“确定”。
在添加页面选择“确定”。
就会回到“普通”页面,选中相应数据库,如下图:
然后选择“选项”(即Options)操作,按下图操作:
最后选择“确定”(或ok)即可。
完整数据库导出与导入
对实现一台SQLServer2005数据库备份后,从另外一台数据库进行恢复的步骤进行描述,以便于实验环境数据库服务器到现场部署数据库服务器的完整数据库导出与导入。
1 备份数据库
首先需要备份待导出的数据库,如下图所示,右键点击数据库,选择“任务”菜单组下面的“备份”菜单。
图1
在备份数据库对话框中,选择备份类型:完整,输入备份名称,说明,过期时间,添加备份文件点击确定完成备份。
图2
备份完毕后需要从备份数据库导出的文件数据库备份文件,如图2所示的文件:eresdb20140514.bak。
2 恢复数据库
接着进行再另一台数据库服务器进行恢复的操作,首先保证进行操作的用户具备dbcreator和sysadmin的服务器角色。
在登录用户属性中进行设置,如图3所示。
图3
然后确保备份文件已经复制,确保要恢复的数据库文件目录已经创建,如下图图4所示,确保建立目录:F:\webapp\eres\db,否则执行后面的SQL会报错。
图4
最后执行以下SQL语句:
RESTORE DATABASE eresdb FROM DISK='D:\project\eresdb20140514.bak'
WITH REPLACE
GO
其中eresdb是数据库名,'D:\project\eresdb20140514.bak'是备份文件。
SQL SERVER2000 数据的导入、导出一.导入数据,意指将从本地库里把数据导进入到指定的库里。
导出数据,意指将指定的库里的数据导出到本地的库里。
(注意:导入、导出只是一个相对的概念,假如从SQL SERVER2000导出到EXCEL中,则SQL SERVER2000是数据源,此操作对于它来说是导出;EXCE是目的,对于EXCEL是导入。
)二。
选者一个数据库源(数据的来源)如要完成从EXCEL97-2000或ACCESS中的数据导入SQLSERVER 2000中,则在此选择下拉菜单中选择EXCEL97-2000或ACCESS的使用驱动器。
此处选择数据库的驱动器三。
指定一个目的库(数据要去的目的地),意指将数据导入哪里去。
四。
如要将SQL SERVER 2000中的数据导出到EXCEL97-2000或ACCESS中,则在此选择下拉菜单中选择EXCEL97-2000或ACCESS的使用驱动器。
目的库的服务器地址,如果仍然是本机,则选择local实验室机器默认均为Window身份验证,故选择第一选项导入的目的库如需要修改表结构,建议选择此项。
在不同结构数据库之间导入导出时也选此项较为合适。
六八(了解)注册服务器不成功的处理。
(在网络不是很顺畅的时候,可以加大服务器连接超时时间)1、2、SQL SERVER2000 数据的备份、恢复还原启动创建数据库备份向导(方法一)展开服务器组,然后展开服务器。
在"工具"菜单上单击"向导"命令。
在"选择向导"对话框中,展开"管理"。
双击"备份向导"。
完成向导中的步骤。
如何创建数据库备份(企业管理器)(方法二,应用较多)创建数据库备份1.展开服务器组,然后展开服务器。
2.展开"数据库"文件夹,右击数据库,指向"所有任务"子菜单,然后单击"备份数据库"命令。
在SQLServer数据库中批量导⼊数据的四种⽅法在SQL Server数据库中批量导⼊数据的四种⽅法,在软件项⽬实施的时候,数据导⼊⼀直是项⽬⼈员⽐较头疼的问题。
其实,在SQL Server中集成了很多成批导⼊数据的⽅法。
有些项⽬实施顾问头疼的问题,在我们数据库管理员眼中,是⼩菜⼀碟。
现在的重点就是,如何让⽤户了解这些⽅法,让数据导⼊变得轻松⼀些。
第⼀:使⽤Select Into语句若企业数据库都采⽤的是SQL Server数据库的话,则可以利⽤Select Into语句来实现数据的导⼊。
Select Into语句,他的作⽤就是把数据从另外⼀个数据库中查询出来,然后加⼊到某个⽤户指定的表中。
在使⽤这条语句的时候,需要注意⼏个⽅⾯的内容。
⼀是需要在⽬的数据库中先建⽴相关的表。
如想把进销存系统数据库(SQLServer)中的产品信息表(Product)导⼊到ERP系统中的产品信息表(M_Product)中。
则前期是在ERP系统的数据库中已经建⽴了这张产品信息表。
⼆是这种⽅法只复制表中的数据,⽽不复制表中的索引。
如在进销存系统数据中的产品信息表中,在产品编号、产品种类等字段上建⽴了索引。
则利⽤Select Into语句把数据复制到ERP系统的表中的时候,只是复制了数据内容的本⾝,⽽不会复制索引等信息。
三是这条语句使⽤具有局限性。
⼀般情况下,这只能够在SQL Server数据库中采⽤。
不过,对于SQL Server不同版本的数据库,如2008或者2003,还都是兼容的。
若需要导⼊的对象数据库不是SQL Server的,则需要采⽤其他的⽅法。
四是采⽤这条语句的话,在⽬的表中必须不存在数据。
否则的话,⽬的表中的数据会被清除。
也就是说,这个语句不⽀持表与表数据的合并。
在SQL Server中,有⼀条类似的语句,可以实现这个功能。
这条语句就是:Insert Into。
他的作⽤就是把另外⼀张表中的数据插⼊到当前表中。
三大技巧学会SQL server2012数据导入导出
一、在access2013中操作并导入sql
2012中的数据
一、新建数据库名为:access.accdb
二、打开access.accdb
三、点新建sql Server
输入一个名字
四、在服务器栏目下拉选择默认
如果密码错误会如下:
密码正确后,可看到sql2012中的所有数据库:
你也可以进入sql2012中看看:
五、下一步:
七,输入sql登录密码:
八,全选
九,等片刻,就可以看到成为导入的数据
二、在Access2013中操作并导入Access2003/2007中的数据
可以看到已经导入的数据:
三、在Access2013中操作并导出数据到sql2012
点新建:
写一个名字:
服务器填写,进入你的sql2012查看名字:PC-201408040759
如果出现如下:
请进入sql2012删除这个表:
保存成功,进入sql2012看看:。
sql语句完成数据的导⼊导出熟悉SQL SERVER的数据库管理员都知道,其DTS可以进⾏数据的导⼊导出,其实,我们也可以使⽤Transact-SQL语句进⾏导⼊导出操作。
在 Transact-SQL语句中,我们主要使⽤OpenDataSource函数、OPENROWSET 函数,关于函数的详细说明,请参考SQL联机帮助。
利⽤下述⽅法,可以⼗分容易地实现SQL SERVER、ACCESS、EXCEL数据转换,详细说明如下:⼀、SQL SERVER 和ACCESS的数据导⼊导出常规的数据导⼊导出:使⽤DTS向导迁移你的Access数据到SQL Server,你可以使⽤这些步骤:○1在SQL SERVER企业管理器中的Tools(⼯具)菜单上,选择Data Transformation○2Services(数据转换服务),然后选择 czdImport Data(导⼊数据)。
○3在Choose a Data Source(选择数据源)对话框中选择Microsoft Access as the Source,然后键⼊你的.mdb数据库(.mdb⽂件扩展名)的⽂件名或通过浏览寻找该⽂件。
○4在Choose a Destination(选择⽬标)对话框中,选择Microsoft OLE DB Prov ider for SQL Server,选择数据库服务器,然后单击必要的验证⽅式。
○5在Specify Table Copy(指定表格复制)或Query(查询)对话框中,单击Copy tables(复制表格)。
○6在Select Source Tables(选择源表格)对话框中,单击Select All(全部选定)。
下⼀步,完成。
Transact-SQL语句进⾏导⼊导出:1.在SQL SERVER⾥查询access数据:SELECT *FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="c:"DB.mdb";User ID=Admin;Password=')...表名2.将access导⼊SQL server在SQL SERVER ⾥运⾏:SELECT *INTO newtableFROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0','Data Source="c:"DB.mdb";User ID=Admin;Password=' )...表名3.将SQL SERVER表⾥的数据插⼊到Access表中在SQL SERVER ⾥运⾏:insert into OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source=" c:"DB.mdb";User ID=Admin;Password=')...表名(列名1,列名2)select 列名1,列名2 from sql表实例:insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0','C:"db.mdb';'admin';'', Test)select id,name from TestINSERT INTO OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'c:"trade.mdb'; 'admin'; '', 表名)SELECT *FROM sqltablename⼆、SQL SERVER 和EXCEL的数据导⼊导出1、在SQL SERVER⾥查询Excel数据:SELECT *FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="c:"book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]下⾯是个查询的⽰例,它通过⽤于 Jet 的 OLE DB 提供程序查询 Excel 电⼦表格。
SQL Server的Export Data用法随着信息技术的不断发展,数据处理和管理变得越来越重要。
在数据库管理系统中,导出数据是一个常见的操作,而在SQL Server中,导出数据的功能非常强大并且灵活。
本文将介绍SQL Server中Export Data的用法,帮助读者更好地掌握这一重要的数据管理工具。
一、什么是Export Data在SQL Server中,Export Data是指将数据库中的数据导出到其他文件或格式的操作。
这样做可以方便用户在不同的环境中使用数据,比如在不同的数据库中导入数据,或者将数据导出到Excel等其他文件格式中进行分析和处理。
二、使用SQL Server Management Studio进行Export Data1. 打开SQL Server Management Studio,并连接到相应的数据库实例。
2. 在数据库对象资源管理器中,找到需要导出数据的数据库,右键点击该数据库,选择任务 -> 导出数据。
这将打开一个向导,帮助我们完成导出数据的操作。
3. 在向导的第一个界面中,我们需要选择数据源。
这里可以选择SQL Server本地实例,也可以选择其他的数据源,比如ODBC数据源。
4. 点击下一步,我们需要选择目标数据源。
这里可以选择目标数据库实例,也可以选择其他的数据目标,比如Excel文件、CSV文件等。
5. 接下来,我们需要选择要导出的数据表或查询。
在这一步也可以进行数据映射和转换等操作,根据实际需求进行设置。
6. 在完成上述步骤后,我们可以预览导出数据的结果,确认无误后点击下一步,然后完成向导,即可完成数据导出操作。
三、使用SQL Server命令进行Export Data除了使用SQL Server Management Studio的GUI界面进行数据导出外,我们也可以使用SQL Server的命令进行数据导出操作。
这种方法更加灵活并且适用于批量导出数据的情况。
sql server 导出数据科学技术法要在SQL Server中使用科学技术法导出数据,可以使用以下方法:1. 在查询中使用科学技术法格式化数值字段:```sqlSELECT FORMAT(MyNumber, 'E') AS FormattedNumberFROM MyTable```其中,MyNumber是数值列的名称,MyTable是数据表的名称。
2. 将查询结果导出为CSV文件,然后手动在CSV文件中对数值字段应用科学技术法格式:```sqlSELECT MyNumberFROM MyTableINTO OUTFILE 'output.csv'FIELDS TERMINATED BY ','ENCLOSED BY '"'LINES TERMINATED BY '\n';```然后,打开导出的CSV文件,并手动对数值字段应用科学技术法格式。
3. 使用SQL Server Management Studio (SSMS)导出数据时指定数值格式为科学技术法:- 打开SSMS并连接到SQL Server数据库。
- 在对象资源管理器中选择要导出数据的数据库。
- 右键单击数据库,选择任务,然后选择导出数据。
- 在导出向导的“选择源表和视图”步骤中选择要导出的表或视图。
- 在“选择目标文件”步骤中选择要导出到的文件位置和格式。
- 在“设置文档选项”步骤中,选择“特定格式”并指定数据文件的格式。
- 在“列选择”步骤中,选择要导出的列。
- 在“设置文档选项”步骤中,选择“自定义”并在“数值格式”字段中输入科学技术法格式(例如,0.00E+00)。
- 完成导出向导并导出数据到指定的文件中。
以上是在SQL Server中导出数据时使用科学技术法的几种方法。
您可以根据您的具体情况选择适合您的方法。
网上例子insert intoDAY(numchnid,numsrvid,numprovid,numgwid,r_day,mo_all,mt_all,mt_valid, mt_userr,mt_sum)select v.numchnid, v.numsrvid, v.numprovid, v.numgwid,DATE(v.r_day), v.mo_all,case when w.mt_all is null then 0 else w.mt_all end,case when w.mt_valid is null then 0 else w.mt_valid end, case when w.mt_user is null then 0 else w.mt_user end,case when w.sumfee is null then 0 else w.sumfee endfrom report_tmp3 vleft join report_tmp4 won v.numchnid = w.numchnidand v.numsrvid = w.numsrvidand v.numprovid = w.numprovidand v.numgwid = w.numgwidand v.r_day = w.r_day;commit;同库导出导入数据:insert into news.dbo.Table_1(title,cid)select title, id from Article where Articleid=1跨库导出导入数据:sql语句中使用数据库连接insert into Table_1(title,cid)select ArticleClass,ArticleTitle fromOPENDATASOURCE('SQLOLEDB','Data Source=.;UserID=sa;Password=123').database1.dbo.Article(会遇到问题后面有解决方法)--查询示例select * from ITSV.数据库名.dbo.表名--导入示例select * into 表 from ITSV.数据库名.dbo.表名--以后不再使用时删除链接服务器exec sp_dropserver 'ITSV ', 'droplogins '--连接远程/局域网数据(openrowset/openquery/opendatasource)--1、openrowset--查询示例select * from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)--生成本地表select * into 表 from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)--把本地表导入远程表insert openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)select *from 本地表--更新本地表update bset b.列A=a.列Afrom openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)as a inner join 本地表 bon a.column1=b.column1--openquery用法需要创建一个连接--首先创建一个连接创建链接服务器exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 '--查询select *FROM openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ')--把本地表导入远程表insert openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ')select * from 本地表--更新本地表update bset b.列B=a.列BFROM openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ') as ainner join 本地表 b on a.列A=b.列A--3、opendatasource/openrowsetSELECT *FROM opendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ' ).test.dbo.roy_ta--把本地表导入远程表insert opendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ').数据库.dbo.表名select * from 本地表遇到的问题SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。
SQLSERVER将一个表中的部分查询数据导入另一个表中的方法:一、若源表与目标表同在一台机器上,直接写SQL语句即可:源表名:prdproductinfo_Source 称目标表名:PrdProductInfo_GoalINSERT INTO [PrdProductInfo_Goal]([productTypeCode],[productTypeName],[productModelId],[productModelCode],[productModelName],[productModelSpec],[productCode],[productName],[madePlace],[packageLanguage],[devicesNumber],[madeBatchNumber],[madeCommandOrder],[madeDate],[outDate])(select [productTypeCode],[productTypeName],[productModelId],[productModelCode],[productModelName],[productModelSpec],[productCode],[productName],[madePlace],[packageLanguage],[devicesNumber],[madeBatchNumber],[madeCommandOrder],[madeDate],[outDate] from prdproductinfo_Source)二、若源表与目标表不在同一台机器上,则可先将源表中的数据导出到EXCEL中,再将EXCEL中的数据导入到目标表中。
操作步骤如下:A、将源表中的数据导出到EXCEL中,步骤如下:1、选中数据库,右键-→任务-→点击“导出数据”,如下图:2、点击下图中的“下一步”:3、在“选择数据源”窗口,保持默认值,点击“下一步”:4、在“选择目标”窗口,在“目标”项的下拉框中,选择“Microsoft Excel”在Excel文件路径一栏后,点击“浏览”,选择要导出的Excel文件的存放路径及Excel名称。
BCP是SQL Server中负责导入导出数据的一个命令行工具,它是基于DB-Library 的,并且能以并行的方式高效地导入导出大批量的数据。
BCP可以将数据库的表或视图直接导出,也能通过SELECT FROM语句对表或视图进行过滤后导出。
在导入导出数据时,可以使用默认值或是使用一个格式文件将文件中的数据导入到数据库或将数据库中的数据导出到文件中。
下面将详细讨论如何利用BCP导入导出数据。
1. BCP的主要参数介绍BCP共有四个动作可以选择。
(1) 导入。
这个动作使用in命令完成,后面跟需要导入的文件名。
(2) 导出。
这个动作使用out命令完成,后面跟需要导出的文件名。
(3) 使用SQL语句导出。
这个动作使用queryout命令完成,它跟out类似,只是数据源不是表或视图名,而是SQL语句。
(4) 导出格式文件。
这个动作使用format命令完成,后而跟格式文件名。
下面介绍一些常用的选项:-f format_fileformat_file表示格式文件名。
这个选项依赖于上述的动作,如果使用的是in或out,format_file表示已经存在的格式文件,如果使用的是format则表示是要生成的格式文件。
-x这个选项要和-f format_file配合使用,以便生成xml格式的格式文件。
-F first_row指定从被导出表的哪一行导出,或从被导入文件的哪一行导入。
-L last_row指定被导出表要导到哪一行结束,或从被导入文件导数据时,导到哪一行结束。
-c使用char类型做为存储类型,没有前缀且以"\t"做为字段分割符,以"\n"做为行分割符。
-w和-c类似,只是当使用Unicode字符集拷贝数据时使用,且以nchar做为存储类型。
-t field_term指定字符分割符,默认是"\t"。
-r row_term指定行分割符,默认是"\n"。
SQLServer导⼊、导出、备份数据⽅法⼀、导出导⼊SQL Server⾥某个数据库 1.在SQL Server企业管理器⾥选中要转移的数据库,按⿏标右键,选所有任务->备份数据库。
2.备份选数据库-完全, ⽬的备份到按添加按钮 ⽂件名在SQL Server服务器硬盘下输⼊⼀个⾃定义的备份数据库⽂件名(后缀⼀般是bak) 重写选重写现有媒体 最后按确定按钮。
如果⽣成的备份数据库⽂件⼤于1M,要⽤压缩⼯具压缩后再到Internet上传输。
3.通过FTP或者remote desktop或者pcanywhere等⽅法 把第⼆步⽣成的备份数据库⽂件或者其压缩后的⽂件传到⽬的SQL Server数据库,如果有压缩要解压。
4.⽬的SQL Server数据库如果还没有此数据库,先创建⼀个新的数据库; 然后选中这个新创建的数据库,按⿏标右键,选所有任务->还原数据库 还原->从设备->选择设备->磁盘->添加(找到要导⼊的备份数据库⽂件名)->确定 还原备份集->数据库-完全 最后按确定按钮。
完全的数据库导⼊成功了。
(如果在已经存在的SQL Server数据库上还原数据库可能遇到有还有其它⼈正在使⽤它⽽恢复操做失败, 可以去看 ->管理->当前活动->锁/对象->找到数据库下锁的进程号->到查询分析器⾥⽤kill 进程号杀掉这些锁, 然后再做还原) 注意:如果在原有的⽬的SQL Server数据库上从备份⽂件(*.bak)还原数据库 会把已经存在的表、存储过程等数据库对象全部替换成最近这次导⼊的备份数据库⾥的内容。
如果⼀定要还原备份⽂件(*.bak)⾥部分数据,需要另外建⼀个新数据库, 其逻辑名称和数量同备份⽂件(*.bak)⾥数据库的逻辑名称和数量⼀致; 新数据库的物理⽂件名称取得⼀定要和备份⽂件(*.bak)⾥数据库的物理⽂件不⼀样才⾏。
sqlserver数据的导入导出命令sql server 数据的导入导出命令一、将.dbf(foxpro数据文件)导入到sql server中:-------------如果接受导入数据的SQL表不存在,导入时创建select * into 要生成的SQL表名 from openrowset('MSDASQL','Driver=Microsoft Visual F oxPro Driver;SourceType=DBF;SourceDB=c:\','select * from dbf表名.DBF')实例:--导入mdf数据文件select * into t_tdd from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=d:\我的文档\桌面\宁夏第一次数据','select * from [t_tdd.DBF]')在执行命令前,要下载了一个microsoft ole db provider for visual foxpro安装,可以了。
在使用该命令时,有时会出现如下错误提示:SQL Server 阻止了对组件'Ad Hoc Distributed Queries' 的STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。
系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。
有关启用 'Ad Hoc Distributed Queries' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。
SQL Server批量导出表数据的方法在SQL Server数据库中,有时我们需要将表数据导出为不同的文件格式,如CSV、Excel等。
本文将介绍几种常用的方法,来实现SQL Server批量导出表数据的功能。
1. 使用BCP命令导出数据BCP(Bulk Copy Program)是SQL Server自带的一个命令行工具,可以用来导入导出数据。
下面是使用BCP命令导出表数据的步骤:1.打开命令提示符或Powershell窗口,输入以下命令:bcp [数据库名称].[表名] out [文件路径] -c -T -S [服务器名称]其中,数据库名称是指要导出数据所在的数据库名,表名是指要导出数据的表名,文件路径是指要导出数据的文件路径,服务器名称是指SQL Server实例的名称。
例如,要将数据库AdventureWorks中的表Sales.SalesOrderDetail的数据导出为CSV文件,可以使用以下命令:bcp AdventureWorks.Sales.SalesOrderDetail out "C:\ExportData.csv" -c -T-S localhost2.执行上述命令后,BCP会将表数据导出为指定的文件。
使用BCP命令导出数据的优点是速度快、可批量导出多个表数据,但缺点是需要使用命令行操作,不够直观。
2. 使用SQL Server Management Studio导出数据SQL Server Management Studio(简称SSMS)是SQL Server的可视化管理工具,可以通过图形化界面导出表数据。
以下是使用SSMS导出表数据的步骤:1.打开SSMS,连接到SQL Server实例,展开数据库和表节点,右键点击要导出数据的表,选择“导出数据”选项。
2.在导出数据向导中,选择数据源和目标:–数据源:选择要导出数据的表。
–目标:选择要导出数据的文件格式(如CSV、Excel等)和文件路径。
完整数据库导出与导入
对实现一台SQLServer2005数据库备份后,从另外一台数据库进行恢复的步骤进行描述,以便于实验环境数据库服务器到现场部署数据库服务器的完整数据库导出与导入。
1 备份数据库
首先需要备份待导出的数据库,如下图所示,右键点击数据库,选择“任务”菜单组下面的“备份”菜单。
图1
在备份数据库对话框中,选择备份类型:完整,输入备份名称,说明,过期时间,添加备份文件点击确定完成备份。
图2
备份完毕后需要从备份数据库导出的文件数据库备份文件,如图2所示的文件:eresdb20140514.bak。
2 恢复数据库
接着进行再另一台数据库服务器进行恢复的操作,首先保证进行操作的用户具备dbcreator和sysadmin的服务器角色。
在登录用户属性中进行设置,如图3所示。
图3
然后确保备份文件已经复制,确保要恢复的数据库文件目录已经创建,如下图图4所示,确保建立目录:F:\webapp\eres\db,否则执行后面的SQL会报错。
图4
最后执行以下SQL语句:
RESTORE DATABASE eresdb FROM DISK='D:\project\eresdb20140514.bak'
WITH REPLACE
GO
其中eresdb是数据库名,'D:\project\eresdb20140514.bak'是备份文件。