我也不写太详细了,就把需要实现的代码给贴出来 假如你的画布和数据块都已经添加好了, 首先看你的添加窗口的数据块是数据库块还是非数据库块,如果是数据库块,你对表进行操作的数据直接commit就可以了,否则的话,要insert table (item,....) value(value1,......);然后commit; 添加判断表中是否已存在此记录,有了就查询,否则录入数据(假如添加块的块名:blk_add,主界面上的块名叫做table_name)导航到一个窗口就go_block(''); declare nCount number(4); begin if :blk_add.a is not null then select count(*) into nCount from table_name; IF nCount = 0 then -- 可以现在插入数据,然后提交也可以等你B,D,E几个字段的数据一起入完后一起提交 ELSE GO_BLOCK('table_name'); -- ' a = '||:blk_add.a ,如果a是字符型就带上引号' a = '||chr(39) ||:blk_add.a||chr(39) SET_BLOCK_PROPERTY('table_name',default_where,' a = '||:blk_add.a); execute_query; end if; else message('**不能为空,请填写');message('**不能为空,请填写'); end if;end; d2000 想随意的增加字段真的不方便,要的也是死的,因为不晓得新增项目的类型等等,
假如你的画布和数据块都已经添加好了,
首先看你的添加窗口的数据块是数据库块还是非数据库块,如果是数据库块,你对表进行操作的数据直接commit就可以了,否则的话,要insert table (item,....) value(value1,......);然后commit;
添加判断表中是否已存在此记录,有了就查询,否则录入数据(假如添加块的块名:blk_add,主界面上的块名叫做table_name)导航到一个窗口就go_block(''); declare
nCount number(4);
begin
if :blk_add.a is not null then
select count(*) into nCount from table_name;
IF nCount = 0 then
-- 可以现在插入数据,然后提交也可以等你B,D,E几个字段的数据一起入完后一起提交
ELSE
GO_BLOCK('table_name');
-- ' a = '||:blk_add.a ,如果a是字符型就带上引号' a = '||chr(39) ||:blk_add.a||chr(39)
SET_BLOCK_PROPERTY('table_name',default_where,' a = '||:blk_add.a);
execute_query;
end if;
else
message('**不能为空,请填写');message('**不能为空,请填写');
end if;end;
d2000 想随意的增加字段真的不方便,要的也是死的,因为不晓得新增项目的类型等等,