導入導出大全(2004-12-13)

** 導入導出大全 (2004-12-13) **

** http://builderman.home.sunbo.net/show_hdr.php?xname=U53DTV0&dname=517DTV0&xpos=1 **


** 一、打開另外一個數據庫 **

1.

打開 SQL server2000 的另一個數據庫的表

(1). select * from openrowset('sqloledb','sprogram';'develop';'11111','select * from kind')

(2). select * from openrowset('sqloledb','190.1.1.247';'develop';'11111','select * from kind')

(3). select * from opendatasource('sqloledb','data source=sprogram;user ID=develop;Password=11111').new_ks.dbo.kind

** 2. **

打開 Access2000 的一個表

(1). select * from OPENDATASOURCE( 'Microsoft.Jet.OLEDB.4.0','Data Source=e:\north.mdb;User ID=Admin;Password=')...supply

(2). select * from openrowset('Microsoft.Jet.OLEDB.4.0',

'e:\north.mdb';'admin';'',supply)

(3). select * from openrowset('Microsoft.Jet.OLEDB.4.0',

'e:\north.mdb';'admin';'','select * from supply where 供應商編號 >10')

** 3. **

打開 Excel 的一個表

(1). select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0'

,'Excel 5.0;HDR=YES;DATABASE=e:\test.xls',sheet1$)

(2). select * into 表 from OPENROWSET('MICROSOFT.JET.OLEDB.4.0'

, 'Excel 5.0;HDR=YES;DATABASE=e:\test1.xls' , sheet3$)


** 二、導入與導出 **

1. 用 BCP 工具導入導出

(1)xls 文件

EXEC master..xp_cmdshell 'bcp "SELECT class_no , kind_no , cn_name FROM new_ks.dbo.kind ORDER BY 1 , 2" queryout "e:\test3.xls" -c -q -S"sprogram" -U"develop" -P"12345"'

(2) /** ** 导入文本文件 **

-- 入 SQLServer

select * into 你的表 from OpenRowset('MSDASQL' , 'Driver={Microsoft Text Driver (*.txt; *.csv)};DefaultDir=c:\temp;' , 'select * from contact.txt')

-- 查詢導出

EXEC master..xp_cmdshell 'bcp "SELECT class_no , kind_no , cn_name FROM new_ks.dbo.kind ORDER BY 1 , 2" queryout "e:\TX1.txt" -c -q -S"sprogram" -U"develop" -P"12345"'

-- 直接導出

EXEC master..xp_cmdshell 'bcp new_ks.dbo.class out "e:\TX3.txt" -c -S"sprogram" -U"develop" -P"12345"'

-- 直接導入

EXEC master..xp_cmdshell 'bcp " 數據庫 .dbo. 數據表 " in c:\DT.txt -c -S 服務器名 -U 用戶 -P 密碼 '

EXEC master..xp_cmdshell 'bcp hdh.dbo.kind in "e:\TX1.txt" -c -q -S -U -P'

EXEC master..xp_cmdshell 'bcp hdh.dbo.kind in "e:\test3.xls" -c -q -S -U -P'

-- 用 BULK INSERT 導入

BULK INSERT hdh.dbo.kind

FROM 'e:\tx1.txt'

WITH (

FIELDTERMINATOR = '\t' ,

ROWTERMINATOR = '\n'

)

前提條件是表如 kind 要存在,而且字段與 test.txt 字段數目要一樣多

在查詢分析器中運行,而且是以 sa 用戶登錄

bulk insert tbyhhk from 'c:\t.txt' with( formatfile='c:\bcp.txt')

** 3. ** ** 其它數據庫的導入方法: **

(1)--/* dBase IV 文件
select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
, 'dBase IV;HDR=NO;IMEX=2;DATABASE=C:' , 'select * from [ 客户资料 4.dbf]')
--/
(2)--/
dBase III 文件
select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
, 'dBase III;HDR=NO;IMEX=2;DATABASE=C:' , 'select * from [ 客户资料 3.dbf]')
--/
(3)--/
FoxPro 数据库
select * from openrowset('MSDASQL' ,
'Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:' ,
'select * from [aa.DBF]')
--*/

Published At
Categories with 数据库类
comments powered by Disqus