我们正在将Access表单/ Access数据库迁移到Access表单/ SQL数据库。
我在模仿访问中发生的验证时遇到了问题。
当用户输入新记录并跳过必填字段并尝试保存访问时,会显示一个消息框,说明需要某些字段(验证规则)
对我来说问题是,同样的场景为我提出了关于丢失字段的SQL异常。尽管我有一个验证规则。 验证规则不起作用,除非您先移动到该字段然后尝试逃避或保存。但是,例如1)开始新记录2)在第一个字段中键入内容3)按向下箭头保存记录
如何在整行上进行验证(pref而不必求助于编写代码)
示例显示在下一个屏幕截图中,显示的最后一列应该有一个值,但除非您专门转到该字段然后键入错误,否则不会强制执行验证。 如您所见,最后2条记录已保存而未经验证。
答案 0 :(得分:1)
您需要了解Access和SQL Server之间的区别。
您的目标是3层解决方案的1层解决方案,层是用户界面层(Access) - 业务逻辑层(Access / SQL Server?) - 数据层(SQL Server)。每个信息都需要在每个层上进行数据验证。
我建议您阅读多层应用程序。
关于您的特定问题 - 如果选择仅在“剪切”和“种子”之间进行,则应通过与新表的外键关系来控制,而不是使用文本字段。您的UI可以使用它来生成一个组合框选择,以防止无效数据进入,即使FZ关系发生,FK关系也会拒绝它。只需在FK表中添加记录,就可以适应业务逻辑的变化(例如允许“树苗”)。