你的目的是要作什么 如果只是利用查询结果的话就不用再赋值了 如果是想改变查询出记录的信息的话就用Query的update语句吧 ....... with Query1 do begin SQL.Clear; SQL.Add('update abc set fa='''Jacky'''); ExecSQl; end; ........
To dingwei(小丁子) ( ) 信誉:100 : 会出错,是ODBC出错的信息我的程序很简单,就以上那些, 就是想select后得一个dataset然后修改, 我insert into 不会出任何问题to 回复人: netlib(河外孤星) ( ) 信誉:116 query1.edit 出can not modified read-only dataset错我是菜鸟,刚起步学,帮帮忙
Query1.SQL.Clear;
Query1.SQL.Add('SELECT * FROM ABC');
Query1.open;
Query1.First;
//
query1.edit; Query1.FieldByName('fA').Value:='Jacky';
//
query1.post;
Query1.Close;
Query1.close;
Query1.SQL.Clear;
Query1.SQL.Add('SELECT * FROM ABC');
Query1.open;
query1.edit;
Query1.First;
Query1.FieldByName('fA').asstring:='Jacky';
Query1.Close;
Query1.close;
Query1.SQL.Clear;
Query1.SQL.Add('SELECT * FROM ABC');
Query1.open;
query1.edit;
Query1.First;
Query1.FieldByName('fA').asstring:='Jacky';
Query1.Close;
如果只是利用查询结果的话就不用再赋值了
如果是想改变查询出记录的信息的话就用Query的update语句吧
.......
with Query1 do
begin
SQL.Clear;
SQL.Add('update abc set fa='''Jacky''');
ExecSQl;
end;
........
会出错,是ODBC出错的信息我的程序很简单,就以上那些,
就是想select后得一个dataset然后修改,
我insert into 不会出任何问题to 回复人: netlib(河外孤星) ( ) 信誉:116
query1.edit 出can not modified read-only dataset错我是菜鸟,刚起步学,帮帮忙
Query1.SQL.Clear;
Query1.SQL.Add('SELECT * FROM ABC');
Query1.open;
Query1.First;
Query1.requestlive:=true;
Query1.FieldByName('fA').Value:='Jacky';
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('SELECT * FROM ABC');
Query1.open;
Query1.First;
query1.edit;
Query1.FieldByName('fA').Value:='Jacky';
Query1.Close;
如果是用BDE,Query是不能修改的,除非把RequestLive设为true,但也只是对简单的查询有效,复杂的不行。如果是用ADO,则不存在此问题。
Query1.SQL.Clear;
Query1.SQL.Add('SELECT * FROM ABC');
Query1.open;
//注意这里
//首先
Query1.First;
//然后
query1.edit;
//OK!!!
Query1.FieldByName('fA').asstring:='Jacky';
Query1.Close;
Query1.close;
Query1.SQL.Clear;
Query1.SQL.Add('SELECT * FROM ABC');
Query1.open;
//注意这里
//首先
Query1.First;
//然后
query1.edit;
//OK!!!
Query1.FieldByName('fA').asstring:='Jacky';
Query1.Post;
Query1.Close;