如果你能保证你不会直接修改后台?且不会出现任何程序,人为错误的话。。
解决方案 »
- sqlserver 中有没有转义字符
- 求一SQL语句。
- 怎么查看数据库被那些远程用户连接了?
- 一个比较难的算排版最优算法问题,解决了另开贴给288分!在线等待...
- 跪求改写函数,吧这个函数用posrgresql支持的语法写一遍
- SQLServer2000备份问题,以往每次备份都是备份自己使用的数据库,然后在重装系统后恢复,再人工建用户和以前的一些计划作业,很麻烦,怎
- 请高手帮帮忙,存储过程怎么写?
- 四张结构相同的表,合成一张表。。并且如果记录完全相同,则取一条。
- 如何自己编写程序从一个数据库表导出数据到另一个数据库表中(数据是追加到另一个表中)
- 事件探察器 "读取跟踪数据失败",啥原因?
- 存储过程中怎样使用事务?
- 多线程怎么对数据库操作
第二种属于人治,不可避免会出许多意想不到的问题,实在觉得影响速度 ,还不如就不要算了!
“如果你想让用户直接用SQL操作数据, 外键是必要的. 但大多数而言, 用户都是通过应用程序访问数据的.
在程序中, 涉及外键的应用基本是以下方式. 以EMP和DEPT表为例, EMP中的DEPTNO是foreign key. 当用户输入/更改EMP表的DEPTNO数据时, 通常是列出一个下拉列表, 里面含可供选择的DEPTNAME (隐含DEPTNO). 这个表是程序自动从DEPT表中生成的. 在这种情况下, 用户只能在合理的DEPTNO中选择, 无论如何都不会破坏Constraints.
即使使用了外键, 在以上所述的情况下, 数据的integrity是靠程序来维护的, 外键并没有起什么作用. ”
这是我与同事的一个争论,我认为即使在速度方面外键约束仍快于自建程序,当然自建程序也需保证完整性为前提。我想以上我引述的那段内容肯定有问题,但未找到(比如并发时),请指点。