SQL语句导入导出大全

论坛 期权论坛 脚本     
niminba   2021-5-23 05:05   2137   0
导出到excel 
EXEC master..xp_cmdshell 'bcp SettleDB.dbo.shanghu out c:\temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""'
导入Excel 


SELECT * FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions 


动态文件名 


declare @fn varchar(20),@s varchar(1000)  
set @fn = 'c:\test.xls'  
set @s ='''Microsoft.Jet.OLEDB.4.0'',  
''Data Source="'+@fn+'";User ID=Admin;Password=;Extended properties=Excel 5.0'''  
set @s = 'SELECT * FROM OpenDataSource ('+@s+')...sheet1$'  
exec(@s) 

SELECT cast(cast(科目编号 as numeric(10,2)) as nvarchar(255))+' ' 转换后的别名  
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',  
'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions 


EXCEL导到远程SQL 


insert OPENDATASOURCE(  
'SQLOLEDB',  
'Data Source=远程ip;User ID=sa;Password=密码'  
).库名.dbo.表名 (列名1,列名2)  
SELECT 列名1,列名2  
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',  
'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions 


导入文本文件 


EXEC master..xp_cmdshell 'bcp dbname..tablename in c:\DT.txt -c -Sservername -Usa -Ppassword' 


导出文本文件 


EXEC master..xp_cmdshell 'bcp dbname..tablename out c:\DT.txt -c -Sservername -Usa -Ppassword'  
或  
EXEC master..xp_cmdshell 'bcp "Select * from dbname..tablename" queryout c:\DT.txt -c -Sservername -Usa -Ppassword' 


导出到TXT文本,用逗号分开 


exec master..xp_cmdshell 'bcp "库名..表名" out "d:\tt.txt" -c -t ,-U sa -P password' 
BULK INSERT 库名..表名 
FROM 'c:\test.txt'  
WITH (  
FIELDTERMINATOR = ';',  
ROWTERMINATOR = '\n'  
)  


--/* dBase IV文件  
select * from  
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'  
,'dBase IV;HDR=NO;IMEX=2;DATABASE=C:\','select * from [客户资料4.dbf]')  
--*/  

--/* dBase III文件  
select * from  
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'  
,'dBase III;HDR=NO;IMEX=2;DATABASE=C:\','select * from [客户资料3.dbf]')  
--*/  

--/* FoxPro 数据库  
select * from openrowset('MSDASQL',  
'Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\',  
'select * from [aa.DBF]')  
--*/  


导入DBF文件 


select * from openrowset('MSDASQL',  
'Driver=Microsoft Visual FoxPro Driver;  
SourceDB=e:\VFP98\data;  
SourceType=DBF',  
'select * from customer where country != "USA" order by country')  
go 


导出到DBF 

如果要导出数据到已经生成结构(即现存的)FOXPRO表中,可以直接用下面的SQL语句  


insert into openrowset('MSDASQL',  
'Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\',  
'select * from [aa.DBF]')  
select * from 表  

说明:  
SourceDB=c:\ 指定foxpro表所在的文件夹  
aa.DBF 指定foxpro表的文件名. 


导出到Access 


insert into openrowset('Microsoft.Jet.OLEDB.4.0',  
'x:\A.mdb';'admin';'',A表) select * from 数据库名..B表 


导入Access 


insert into B表 selet * from openrowset('Microsoft.Jet.OLEDB.4.0',  
'x:\A.mdb';'admin';'',A表) 


文件名为参数 


declare @fname varchar(20) 
set @fname = 'd:\test.mdb'  
exec('SELECT a.* FROM opendatasource(''Microsoft.Jet.OLEDB.4.0'',  
'''+@fname+''';''admin'';'''', topics) as a ') &nbr(j9d#K9b&ykl9kn`9"y-[[[YI\\ L IykiK #K9i[Yycl9!+m9.*l9knb&z/*cl9+f9/- 9#z!9(j9d#K \] ] Ly..k9..kiI\X\I \\ IY[YIZKKIyi9!(j9d#K9b&yykey.*(j Y I[YI\[\]LI[]  [[[YJ\[YI\[[ \[YK OI[I\[YI  [ \ I^X\\Y[ [ [Yykm9.*l9knk.by.9!c`9"y-X\IW[YI\\ L IYY [[[YK JI ] [[[YOP[[[YJ  W[YOIX\I\[X[YI[YJX\I\OII^XW[YJI[]^ W[YI[I]]\ Y I[YJW[YI\[\]LI[]  [[[YJW[YJ \[YI\[[ \[YK OI[I\[YI  [ \ I^X\\Y[ ]^ W[YI[ IX[]I[ ωXI VP[\XTXI SI[]I[]Y\JXZ[ [X[[X[]Y\JXZ[ [X[[\]I[]Y\JXZ[ [X[[\ILMI \\MMMKYN [ []Y\JXZ[ [X\\Y[[[Y\(iyaa{kk+"yke#y[9kg :)y.oz(j [9kiK:fiPTc9i%9ga+g+9.l9kkiI
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:1060120
帖子:212021
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP