用程序实现将E:\1.txt的内容导入数据库AAV的zxc表中,代码如下
adoquery.Close;
adoquery.SQL.Clear;
adoquery.SQL.Text:='bulk insert AAV.dbo.[zxc] from ''e:\1.txt'' with (FIELDTERMINATOR = ''|'')';
adoquery.ExecSQL;
结果显示错误:
未能进行大容量插入,因为未能打开文件 'E:\1.txt'。操作系统错误代码 21(设备未就绪。)。
请问这是怎么回事?
PS: E:\1.TXT可以用MS SQL的企业管理器导入AAV的zxc表中,不会出现任何问题
adoquery.Close;
adoquery.SQL.Clear;
adoquery.SQL.Text:='bulk insert AAV.dbo.[zxc] from ''e:\1.txt'' with (FIELDTERMINATOR = ''|'')';
adoquery.ExecSQL;
结果显示错误:
未能进行大容量插入,因为未能打开文件 'E:\1.txt'。操作系统错误代码 21(设备未就绪。)。
请问这是怎么回事?
PS: E:\1.TXT可以用MS SQL的企业管理器导入AAV的zxc表中,不会出现任何问题
解决方案 »
- 菜鸟提问,关于组件的引用!
- Listview中设置ViewStyle为vsIcon,如何控制一行显示的项目个数
- 跪求RichView用法 下载了richView不会用
- koda 的 imageedit 的使用问题
- 帮忙修改,谢谢
- 今天还有人在吗?编辑时出现“ File not found: 'DBGridEh.dcu'”!
- 关于delphi版本的问题。
- 关于在线更新的问题!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- DBGrid的ScrollBar
- 如何取得本机的IP地址?
- 如何使用WriteProcessMemory函数设置EDIT框中的内容
- 一个多线程的问题,请高手门帮忙谢谢,!!!!100分送上不够再给!!
在SQLServer中执行
SELECT * into bmk
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="e:\share";User ID=Admin;Password=;Extended properties=dBase 5.0')...bmk
这样就可以把e:\share中的bmk.dbf表导入到Sqlserver中,速度是最快在Form上放一个ADOConnection,连结指向目标Access库比如txt文件在c:\temp\aaaa.txt
就执行
ADOConnection.Connected := True;
ADOConnection.Execute('Select * Into abcd From [Text;Database=c:\temp].aaaa.txt');txt导入SQLServer
select * from OpenRowset('MSDASQL', 'Driver={Microsoft Text Driver (*.txt; *.csv)};
DefaultDir=c:\temp;','select * from aaaa.txt')
把Excel导入到Access中,同txt类似
select * into <table name> from [excel 8.0;database=<filename>].[<sheetname>$]Excel联接ADO串
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\temp\a.xls;Extended
Properties="Excel 8.0;HDR=Yes;";Persist Security Info=False
Extended Properties参数属性这样写 Excel 5.0;HDR=YES;IMEX=1
IMEX=1就是指混合型转换为文本SQLServer从Excel取数
SELECT *
FROM OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="C:\temp\b.xls";Extended Properties="Excel 5.0;HDR=Yes;";Persist Security Info=False')...sheet1$c:\temp\aaa.dbf to Access,
ADOConnection 指向Access
语句是 select * into bbb from aaa in 'c:\temp' 'dbase 5.0;'sql server导出到access
ADOConnection 指向Access
SELECT * into table FROM Tab1 IN [ODBC]
[ODBC;Driver=SQL Server;UID=sa;PWD=;Server=127.0.0.1;DataBase=Demo;]如何把SQL Server的表导出到Access、Text、Dbf。
当然可以在程序中运行SQL Server表导出和txt导入一个道理基本上都是用Jet4.0 和 ODBC连结实现
先用用Jet4.0连结dbf,access,txt然后利用SQL语句导出导入在此我就不详细说了,一句话,都可以的
列出连结串属性Extended properties,
DBase 5.0
DBASE IV
FoxPro 3.0
Paradox 7.X
Excel 8.0
text;HDR=YES;FMT=DelimitedSELECT * into aaa
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\temp\";User ID=Admin;Password=;Extended properties=Text')...[bb#txt]
我的做法一般是用stringList读入文本,再考虑插入数据库
没细看,有时间再看
我以前的sql语句,你看看,和你的一点差别没有。
procedure TForm1.Button1Click(Sender: TObject);
var
sql: string;
begin
sql:='bulk insert test.dbo.[regioncode] from ''d:\rc.txt'' with (FIELDTERMINATOR = '','')';
a.SQL.Clear;
a.SQL.Add(sql);
a.ExecSQL;
end;