我用的是odac控键,不是BDE
with OraQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('SELECT * from mce order by mce');
open;
append;
fields[0].AsString := 'tttwww';
post;
end;
就提示:readonly dataset??
救急!!!!1
with OraQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('SELECT * from mce order by mce');
open;
append;
fields[0].AsString := 'tttwww';
post;
end;
就提示:readonly dataset??
救急!!!!1
本身设置只读属性了码?
if Query1.CanModify then
Query1.RequestLive:= true;
这时候才表明能修改。
对于视图的修改你可以用TUpdateSQL结合 Query来完成,这一点BDE做得非常的好。看一些数据库理论方面的书,
有没有知道ODAC的大哥呀?!!
begin
Close;
SQL.Clear;
SQL.Add('SELECT * from mce ');//去掉order by
open;
Insert;
fields[0].AsString := 'tttwww';
if state in [dsInsert] then
post;
end;
建议使用query+TUpdateSQL
写 Insert;
fields[0].AsString := 'tttwww';
post;
可以么?
你选择的是哪种驱动?如果选择的是Ms For Oracle 的驱动,那么返回的数据集是只读的。我建议用 Update,或者Insert 好些,毕竟这样效率也高些。
在TQuery的UpdateObject选择添加的UpdateSQL。
双击UpdateSQL控件,选择主键和更新字段。单击Generate SQL并翻到SQL页对语句进行适当的修改。
refresh;