【问题标题】:On pressing delete button in Oracle forms 6i by pressing a button it's showing a strange error在 Oracle forms 6i 中通过按下按钮按下删除按钮时,它显示出一个奇怪的错误
【发布时间】:2018-04-06 19:46:41
【问题描述】:

按钮有delete_recordcommit_form

在诊断错误中显示

查询错误:INSERT INTO user_details(EMPID USERNAME) VALUES (:1,:2)。

错误:ORA-01400:无法将 NULL 插入作者 ID CAPPS” "USER_DETAILS" "密码")。

如何通过按删除按钮触发此插入查询。 记录正在从表格中删除,但未在表格中更新。 我认为当涉及到 commit_form 时,它会显示此错误。

【问题讨论】:

    标签: sql oracle oracle10g oracleforms


    【解决方案1】:

    DELETE_RECORD 内置功能顾名思义——从块中删除一条记录。随后的COMMIT_FORM 提交您在该表单中所做的所有 更改,而不仅仅是最后一个操作(即删除的记录)。

    似乎有一个新的(或更新的)记录没有输入密码值,所以COMMIT - 在尝试保存更改时 - 失败并出现 ORA-01400 并通知您必须输入缺少的价值。

    在提交之前确保没有这样的行。一种选择是删除用户定义的按钮和

    • 使用相应的工具栏按钮删除记录
    • 如果有更多不应该存在的行,请重复该操作(即删除)
    • 使用工具栏按钮提交

    【讨论】:

    • 我在 Oracle 表单中有一个表格显示来显示所有记录...当我按下删除按钮时,它会在表格显示中显示已删除的记录(但这不会删除表中的记录) .但是当我提交错误显示的操作时。(我认为它没有提交数据库表中的删除)
    • 没错。 DELETE_RECORD 只是将其从屏幕上删除。为了保存更改(即也将其从数据库中删除),您必须提交,毫无疑问。但是,您同时插入,并且缺少必需的列(密码,在您的情况下)会引发错误。
    猜你喜欢
    • 1970-01-01
    • 2016-07-03
    • 1970-01-01
    • 1970-01-01
    • 2019-04-26
    • 2011-07-04
    • 2015-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多