我正在慢慢学习SQL以及如何使用表单构建器6.情况是我在表格中有一个名为'players'的简单表我有三列:
在表单构建器6中,我使用这三个字段创建了一个非常简单的表单。表格名为'TEAM'。在表格的底部,我有一个标有“添加”的按钮。目标是让用户输入player_no,位置和目标,然后单击“添加”。然后这些信息将进入我的表格。
到目前为止,所有尝试都失败了。我在按钮上设置了一个触发器(WHEN_MOUSE_CLICK)。然后我输入了以下代码:
BEGIN
INSERT INTO players ( player_no )
VALUES ( :TEAM.player_no )
END
为了测试它,我只使用了一个(player_no)字段。然后编译时没有错误当我运行表单并输入player_no并按下按钮时我在状态栏中收到以下错误:
frm-40735:WHEN-MOUSE-CLICK触发器引发未处理的异常ORA-01400
我做错了什么吗?我是SQL和Form Builder的新手,所以非常感谢任何帮助。
答案 0 :(得分:2)
ORA-01400: cannot insert Null似乎您的某个字段不为null,并且您在插入时省略了它们。或值:插入期间TEAM.player_no为空。
此外,从web:
FRM-40735:引发ON-INSERT触发器 未处理我们遇到过类似的问题 自11.5.9。我们清除了Jinitiator 缓存和临时Internet文件 (工具>互联网选项然后 临时互联网文件清楚 文件按钮)。似乎工作。
答案 1 :(得分:1)
使用表单生成器的一个好处是,您几乎总是不需要自己编写DML语句。
只需根据表创建块 - 然后用户可以添加和修改任意数量的记录,然后当它们保存(即COMMIT)时,Forms运行时会自动计算出保存所需的INSERT和UPDATE所需的内容。变化。