记录保存时的验证代码,是写在数据库的插入更新触发器中好、还是写在应用程序中好?
用 VB.NET + SQL Server 开发 Windows 应用程序。
不管写在哪里,都同样可以达到验证的目的。但不知该如何权衡利弊?
写在插入更新触发器中,可以让数据库的通用性和可移植性更好。将来,利用这套数据库再去开发 Web 版的程序、或是改用其他语言来写前端应用程序,可以更为方便一些,不必再重写这些验证代码。
但似乎有一个致命弱点:这些触发器中的代码是不编译的、裸露着的。一来容易遭到用户的修改,二来几乎完全没有保密性。
而如果写在应用程序中,编译成EXE或DLL的话,其利弊则与上面正好相反。
想请问:究竟哪一种为更可取、更合理呢?