我现在有一个SERVER2000的数据库TYC,里面有一张表CUSTOMER,这个表中其中有一个字段为OAADRESS是表示送货地点的,
因为录入资料时我为空的,而现在我想用一个EXCEL中的数据更新它。CUSTOMER
ID OAADRESS
1
2
3EXCEL
ID OAADRESS
1 AA
2 BB
3 CC应怎样做呢?SQL语句怎样写呢?请好心人提供代码?
因为录入资料时我为空的,而现在我想用一个EXCEL中的数据更新它。CUSTOMER
ID OAADRESS
1
2
3EXCEL
ID OAADRESS
1 AA
2 BB
3 CC应怎样做呢?SQL语句怎样写呢?请好心人提供代码?
可以先把execl数据导入到一个sql server表内inexcel内,然后
update CUSTOMER a set a.OAADRESS =
(select oaadress from inexcel b where a.id=b.id )
(select oaadress from inexcel b where a.id=b.id ) 服务器: 消息 170,级别 15,状态 1,行 1
第 1 行: 'A' 附近有语法错误。提示有上面的错误
update a
set a.OAADRESS = b.oaadress
from CUSTOMER a, inexcel b
where a.id=b.id
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, RzButton, ADODB, Provider, DBClient, DB, Grids, DBGridEh,
RzShellDialogs;type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
DBGridEh1: TDBGridEh;
DataSource1: TDataSource;
ADOConnection2: TADOConnection;
ADOQuery1: TADOQuery;
DataSource2: TDataSource;
DBGridEh2: TDBGridEh;
RzBitBtn1: TRzBitBtn;
ADOQuery2: TADOQuery;
procedure FormCreate(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure RzBitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
try
ADOConnection2.Connected:=true;
Except
Application.MessageBox('数据库连接失败,请检查参数!','警告',mb_iconwarning)
end;
end;procedure TForm1.RzBitBtn1Click(Sender: TObject);
begin
with ADOQuery2 do begin
ADOQuery2.SQL.clear;
ADOQuery2.SQL.add('select * from [sheet1$]');
open;
first;
end;while not ADOQuery2.eof do begin
with ADOQuery1 do begin
begin
ADOQuery1.SQL.clear;
ADOQuery1.SQL.add('insert into Pub_Btype (FullName,UserCode) values (:名称,:编码)');
ADOQuery2('名称').value:=adoquery2.fieldbyname('FullName').asstring;
execsql;
end;
ADOQuery2.next;
end;
end;
end;procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
ADOConnection2.Connected:=false;
end;end.
错误提示:[Error] Unit1.pas(60): Missing operator or semicolon
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
begin
ADOQuery1.SQL.clear;
ADOQuery1.SQL.add('insert into Pub_Btype (FullName,UserCode) values (:名称,:编码)');
ADOQuery2('名称').value:=adoquery2.fieldbyname('FullName').asstring;
execsql;
end;
怎么两个begin,你得错误应该是begin..end配对错误,你的代码写的很不规范,建议看一下代码书写规范