sqlserver怎么导出数据库

2024-11-02 22:02:48
推荐回答(5个)
回答1:

材料/工具:SQL Server

1、打开SQL Server,找到需要导出的数据库。

2、在需要导出的数据库上右击,选择任务选项中的导出数据选项。

3、SQL Server导入和导出向导窗口中,单击下一步按钮。

4、选择数据源对话框中,选择数据源选项中的Microsoft OLE DB Provider for SQL Server选项。

5、选择使用SQL Server身份验证,输入用户名和密码,选择要导出的数据库,单击下一步。

6、选择目标对话框中,选择目标选项中的Microsoft OLE DB Provider for SQL Server选项。

7、选择使用SQL Server身份验证,输入用户名和密码,单击新建按钮。

8、出现的创建数据库窗口中,在名称处输入一个导出数据库的名字,本例为NewData。

9、可以看到在数据库选项中,多出了一个NewData的名称,单击下一步。

10、指定复制或查询对话框中,选择复制一个或多个表或视图的数据选项,单击下一步。

11、选择源表和源视图对话框中,选择自己要导出的表和视图。

12、运行包对话框中,单击完成按钮,数据就成功导出了。

回答2:

1、首先打开SQL Server,在待导出的数据库上右击,选择任务中的导出数据选项:

2、随后会弹出SQL Server导入和导出向导对话框,直接点击下一步:

3、来到选择数据源的部分,选择数据源选项中的Microsoft OLE DB Provider for SQL Server的选项:

4、接着选择使用SQL Server身份验证,选择要导出的数据库,然后输入用户名和密码:

5、接着来到选择目标对话框中,点击选择Microsoft OLE DB Provider for SQL Server 一项:

6、再次出现SQL Server身份验证,和前面一样输入用户名和密码,单击下一步:

7、最后来到运行包的对话框中直接单击完成按钮数据就成功导出了。以上就是sqlserver导出数据库的操作:

·

回答3:

  在涉及到SQL Server编程或是管理时一定会用到数据的导入与导出, 导入导出的方法有多种,结合我在做项目时的经历做一下汇总:

  1. SQL Server导入导出向导,这种方式是最方便的.

  导入向导,微软提供了多种数据源驱动,包括SQL Server Native Cliant, OLE DB For Oracle,Flat File Source,Access,Excel,XML等,基本上可以满足系统开发的需求.

  同样导出向导也有同样多的目的源驱动,可以把数据导入到不同的目的源.

  对数据库管理人员来说这种方式简单容易操作,导入时SQL Server也会帮你建立相同结构的Table.

  2. 用.NET的代码实现(比如有一个txt或是excel的档案,到读取到DB中)

  2.1 最为常见的就是循环读取txt的内容,然后一条一条的塞入到Table中.这里不再赘述.

  2.2 集合整体读取,使用OLEDB驱动.

  代码如下:

  

  复制代码
  代码
  string strOLEDBConnect = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\1\;Extended Properties='text;HDR=Yes;FMT=Delimited'";
  OleDbConnection conn = new OleDbConnection(strOLEDBConnect);
  conn.Open();
  SQLstmt = "select * from 1.txt";//读取.txt中的数据
  DataTable dt=new DataTable();
  OleDbDataAdapter da = new OleDbDataAdapter(SQLstmt, conn);
  da.Fill(dt);//在DataSet的指定范围中添加或刷新行以匹配使用DataSet、DataTable 和IDataReader 名称的数据源中的行。
  if(dt.Rows.Count>0)
  foreach(DataRow dr in dt.Rows)
  {
  SQLstmt = "insert into MyTable values('" + dr..."
  复制代码
  

  

  3.BCP,可以用作大容量的数据导入导出,也可以配合来使用.

  语法:

  复制代码
  代码
  bcp {[[database_name.][schema].]{table_name | view_name} | "query"}
  {in | out | queryout | format} data_file
  [-mmax_errors] [-fformat_file] [-x] [-eerr_file]
  [-Ffirst_row] [-Llast_row] [-bbatch_size]
  [-ddatabase_name] [-n] [-c] [-N] [-w] [-V (70 | 80 | 90 )]
  [-q] [-C { ACP | OEM | RAW | code_page } ] [-tfield_term]
  [-rrow_term] [-iinput_file] [-ooutput_file] [-apacket_size]
  [-S [server_name[\instance_name]]] [-Ulogin_id] [-Ppassword]
  [-T] [-v] [-R] [-k] [-E] [-h"hint [,...n]"]
  复制代码
  

  请注意数据导入导出的方向参数:in,out,queryout

  如:

  

  

  

  如:

  

  

  4.BULK INSERT. T-SQL的命令,允许直接导入数据

  语法:

  

  复制代码
  BULK INSERT
  [ database_name. [ schema_name ] . | schema_name. ] [ table_name | view_name ]
  FROM 'data_file'
  [ WITH
  (
  [ [ , ] BATCHSIZE =batch_size ]
  [ [ , ] CHECK_CONSTRAINTS ]
  [ [ , ] CODEPAGE = { 'ACP' | 'OEM' | 'RAW' | 'code_page' } ]
  [ [ , ] DATAFILETYPE =
  { 'char' | 'native'| 'widechar' | 'widenative' } ]
  [ [ , ] FIELDTERMINATOR = 'field_terminator' ]
  [ [ , ] FIRSTROW = first_row ]
  [ [ , ] FIRE_TRIGGERS ]
  [ [ , ] FORMATFILE ='format_file_path' ]
  [ [ , ] KEEPIDENTITY ]
  [ [ , ] KEEPNULLS ]
  [ [ , ] KILOBYTES_PER_BATCH =kilobytes_per_batch ]
  [ [ , ] LASTROW =last_row ]
  [ [ , ] MAXERRORS =max_errors ]
  [ [ , ] ORDER ( { column [ ASC | DESC ] } [ ,...n ] ) ]
  [ [ , ] ROWS_PER_BATCH =rows_per_batch ]
  [ [ , ] ROWTERMINATOR ='row_terminator' ]
  [ [ , ] TABLOCK ]
  [ [ , ] ERRORFILE ='file_name' ]
  )]
  复制代码
  

  

  重要参数:

  

  FIELDTERMINATOR,字段分隔符

  FIRSTROW:第一个数据行

  ROWTERMINATOR:行终结符

  如:

  BULK INSERT dbo.ImportTest
  FROM 'C:\ImportData.txt'
  WITH ( FIELDTERMINATOR =',', FIRSTROW = 2 )

  

  5. OPENROWSET也是T-SQL的命令,包含有DB连接的信息和其它导入方法不同的是,OPENROWSET可以作为一个目标表参与INSERT,UPDATE,DELETE操作.

  语法:

  

  复制代码
  OPENROWSET
  ( { 'provider_name', { 'datasource';'user_id';'password'
  | 'provider_string' }
  , { [ catalog. ] [ schema. ] object
  | 'query'
  }
  | BULK 'data_file',
  { FORMATFILE ='format_file_path' [ ]
  | SINGLE_BLOB | SINGLE_CLOB | SINGLE_NCLOB }
  } ) ::=
  [ , CODEPAGE = { 'ACP' | 'OEM' | 'RAW' | 'code_page' } ]
  [ , ERRORFILE ='file_name' ]
  [ , FIRSTROW = first_row ]
  [ , LASTROW = last_row ]
  [ , MAXERRORS = maximum_errors ]
  [ , ROWS_PER_BATCH =rows_per_batch ]
  复制代码
  

  

  

  如:

  INSERT INTO dbo.ImportTest
  SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
  'Excel 8.0;Database=C:\ImportData.xls', 'SELECT * FROM [Sheet1$]') WHERE A1 IS NOT NULL

  

  

  6.OPENDATASOURCE

  语法:

  OPENDATASOURCE ( provider_name,init_string )
  如:

  INSERT INTO dbo.ImportTest
  SELECT * FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
  'Data Source=C:\ImportData.xls;Extended Properties=Excel 8.0')...[Sheet1$]

  

  7.OPENQUERY.是在linked server的基础上执行的查询.所以执行之前必须先建立好link server.OPENQUERY的结果集可以作为一个table参与DML的操作.

  

  语法:

  OPENQUERY (linked_server ,'query')
  如:

  EXEC sp_addlinkedserver 'ImportData',
  'Jet 4.0', 'Microsoft.Jet.OLEDB.4.0',
  'C:\ImportData.xls',
  NULL,
  'Excel 8.0'
  GO

  

  INSERT INTO dbo.ImportTest
  SELECT *
  FROM OPENQUERY(ImportData, 'SELECT * FROM [Sheet1$]')

回答4:

  1. 开始菜单里sql server -->DTC,(数据导入导出工具)

  2. 选择数据源(就是你当前的数据库)

  3. 选择导出的类型和数据源

  4. 直接导出即可。

也可以通过备份数据库的方式吧数据传输到另一台机器上,但必须是SQL server才能看到,

导入导出功能可以吧数据导出到excel、access,mysql等不同的数据库中

回答5:

1、在成功登录之后,找到要导出的数据库,右击-->任务-->导出数据

2、直接点击下一步

3、会出现一个新窗口,“目标”表示的是我们要把数据库倒入盛什么格式的文件,在这里,我选择的是默认的,继续“下一步”

4、选择“复制一个或多个表或试图的数据”

5、选中要导出的数据

6、继续“下一步”

7、点击“完成”,即可完成数据的导出