关于序列的运用.

yaningou 2003-03-27 04:03:14
因为在程序中要用到唯一字段,该字段的值是通过一序列得到.
现有两种办法:第一种是在程序代码中先从该序列中取出值,然后再赋于该新值列中.
另一种方法是直接写一触发器.在该表的 before insert中从触发器中得到该字段值.
其实此二种方法都可以达到同样的结果.但出于对系统的维护(可读性)及升级来说,本人倾向于第一种方法.望大家给出自己的意见.
...全文
46 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
halfdream 2003-03-28
  • 打赏
  • 举报
回复
可能要根据具体情况处理..
我倾向第一种..不过我不会让客户端程序直接处理,
必须要配合中间件,不管怎么样,不希望有重复代码.

yaningou 2003-03-27
  • 打赏
  • 举报
回复
其实我不赞成用触发器达到此功能主要有两个原因:
第一:触发器的建立对于数据库的运行速度会有一定影响.
第二:也是最主要的原因.如果采用第二种方法,我在查看代码的时候,在insert语句中不会加入该字段,就不会清楚的知道到底对该字段如何赋值,且根本无法知道此唯一字段是根据哪个序列来的.(当然,另加注释可以起到此作用),除非注释非常之详尽,否则数月或者换为他人来看,需切换在delphi及oracle的管理器中才能明白当初是如何赋值的.
setfocus 2003-03-27
  • 打赏
  • 举报
回复
建议使用第二种,出于维护和可读性我觉得第二种都要比第一种好,一般数据在程序中不合理,并不会给程序带来多好的可读性,如果真的是用这些数据的次数不多或者说关联性不大,当然你在程序段中可以提高执行效率,我提倡第二种!

5,927

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧