简单,高分,和sqlserver to excel 有关(300分)

  • 主题发起人 主题发起人 xuxiaoqian
  • 开始时间 开始时间
X

xuxiaoqian

Unregistered / Unconfirmed
GUEST, unregistred user!
如何用最简单的sql语句把sqlserver中的表导入excel表中
 
KeyLife富翁笔记
作者?: chenshaizi
标题?: 异构数据库之间的导入导出示例
关键字: 异构数据库
分类?: 个人专区
密级?: 公开
(评分:★★★★ , 回复: 3, 阅读: 46) »»
异构数据库之间的导入导出示例,abc为表,包含以下导入与导出
MSSQL2EXCEL EXCEL2MSSQL MSSQL2VFP VFP2MSSQL
MSSQL2access access2MSSQL excel2access access2excel
实现部分
procedure TForm1.btn_MSSQL2EXCELClick(Sender: TObject);
begin
//MSSQL2EXCEL
ADOConnection1.ConnectionString:=
'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:/mysmallexe/excel2sql/yp.xls;'
+'Extended Properties=excel 8.0;Persist Security Info=False';
ADOConnection1.Execute('select * into [Abc] from drug_yk IN [ODBC] [ODBC;Driver=SQL Server;UID=sa;PWD=kcsoft58;Server=127.0.0.1;DataBase=kcsoft_his]');
//把一个MSSQL的数据库表及数据导出到excel中,abc为excel中不存在的表名,drug_yk为MSSQL里的表, sa为用户, kcsoft58为密码 , 127.0.0.1为服务大地址 ,kcsoft_his是数据库名称
ADOConnection1.Execute('insert into [abc] select * from drug_yk in [ODBC] [ODBC;Driver=SQL Server;UID=sa;PWD=kcsoft58;Server=127.0.0.1;DataBase=kcsoft_his]');
//把一个MSSQL的数据库表的记录增加到到excel中,执行以后相当于两倍量的数据,一次是导入,一次是insert
end;
procedure TForm1.btn_EXCEL2MSSQLClick(Sender: TObject);
begin
//EXCEL2MSSQL
ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;Password=KCSOFT58;Persist Security Info=True;User ID=SA;Initial Catalog=KCSOFT_HIS;Data Source=CHEN';
ADOConnection1.Execute('SELECT * into [abc] FROM OpenDataSource( '
+QuotedStr('Microsoft.Jet.OLEDB.4.0')+','
+QuotedStr('Data Source="G:/mysmallexe/excel2sql/yp.xls";Extended Properties=excel 8.0;Persist Security Info=False')+')...[Abc]');
end;
procedure TForm1.btn_MSSQL2VFPClick(Sender: TObject);
begin
//MSSQL2VFP
ADOConnection2.ConnectionString:=
'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:/mysmallexe/excel2sql;'
+'Extended Properties=dBase 5.0;Persist Security Info=False';
ADOConnection2.Execute('select * into Abc.dbf from drug_yk IN [ODBC] [ODBC;Driver=SQL Server;UID=sa;PWD=kcsoft58;Server=127.0.0.1;DataBase=kcsoft_his]');
//把一个MSSQL的数据库表及数据导出到VFP中,Abc.dbf 为VFP中不存在的表名,drug_yk为MSSQL里的表, sa为用户, kcsoft58为密码 , 127.0.0.1为服务大地址 ,kcsoft_his是数据库名称

end;

procedure TForm1.btn_VFP2MSSQLClick(Sender: TObject);
begin
//VFP2MSSQL
ADOConnection2.ConnectionString:='Provider=SQLOLEDB.1;Password=KCSOFT58;Persist Security Info=True;User ID=SA;Initial Catalog=KCSOFT_HIS;Data Source=CHEN';
ADOConnection2.Execute('SELECT * into [abc] FROM OpenDataSource( '
+QuotedStr('Microsoft.Jet.OLEDB.4.0')+','
+QuotedStr('Data Source="G:/mysmallexe/excel2sql";Extended Properties=dBase 5.0;Persist Security Info=False')+')...[Abc]');
end;



procedure TForm1.btn_MSSQL2accessClick(Sender: TObject);
begin
//MSSQL2access
ADOConnection2.ConnectionString:=
'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:/mysmallexe/excel2sql/Server.MDB;'
+'Persist Security Info=False;Jet OLEDB:Database Password=happynewyear';
ADOConnection2.Execute('select * into Abc from drug_yk IN [ODBC] [ODBC;Driver=SQL Server;UID=sa;PWD=kcsoft58;Server=127.0.0.1;DataBase=kcsoft_his]');

end;

procedure TForm1.btn_access2MSSQLClick(Sender: TObject);
begin
//access2MSSQL
ADOConnection2.ConnectionString:='Provider=SQLOLEDB.1;Password=KCSOFT58;Persist Security Info=True;User ID=SA;Initial Catalog=KCSOFT_HIS;Data Source=CHEN';
ADOConnection2.Execute('SELECT * into [abc] FROM OpenDataSource( '
+QuotedStr('Microsoft.Jet.OLEDB.4.0')+','
+QuotedStr('Data Source="G:/mysmallexe/excel2sql/Server.MDB";Persist Security Info=False;Jet OLEDB:Database Password=happynewyear')+')...[Abc]');

end;

procedure TForm1.btn_excel2accessClick(Sender: TObject);
begin
//excel2access
ADOConnection2.ConnectionString:=
'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:/mysmallexe/excel2sql/Server.MDB;'
+'Persist Security Info=False;Jet OLEDB:Database Password=happynewyear';
ADOConnection2.Execute('SELECT * into [abc] FROM [excel 8.0;database=G:/mysmallexe/excel2sql/yp.xls].[abc$]');
end;

procedure TForm1.btn_access2excelClick(Sender: TObject);
begin
//access2excel
ADOConnection2.ConnectionString:=
'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:/mysmallexe/excel2sql/yp.xls;'
+'Extended Properties=excel 8.0;Persist Security Info=False';
ADOConnection2.Execute('SELECT * into abc from [G:/mysmallexe/excel2sql/Server.MDB;pwd=happynewyear].abc');

end;
 
用SQL管理器的导出数据功能就可以实现呀
 
bcp pubs..publishers2 out 'C:/publishers.txt' -c -Sservername -Usa -Ppassword
导出数据
 
ADO指向SQLSERVER:
ADOQUERY:
select * into zqqq from [try$] in "d:/rsc/try1.xls" "excel 8.0;"
ZQQQ:为SQLSERVER表名
TRY$:为EXCELSHEET名
 
TO APP2001
我用 MSSQL2EXCEL 试了下
但是提示SQL语句出错

我的语句如下
ADOConnection1.ConnectionString:=
'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/temp/1.xls;'
+'Extended Properties=excel 8.0;Persist Security Info=False';
ADOConnection1.Execute('select * into [sheet1] from newtable [ODBC] [ODBC;Driver=SQL Server;UID=sa;PWD=;Server=127.0.0.1;DataBase=new]');
我的密码为空
 
http://www.csdn.net/develop/article/22/22674.shtm
 
后退
顶部