请教三层结构中 主键问题

奔雷手 2012-02-04 11:12:10
DELPHI XE(DATASNAP) + FIREBIRD 2.5 三层结构
比如 销售单(XS20120204000001)由'XS'+日期+序号 组成,其中 序号 是一个GENERATOR(类似于MSSQLSERVER 的INDETITY,DB2 的sequence),这个单号该怎么去处理,通过数据库触发器/存储过程 生成 or 服务器端通过方法 来生成 or 客户端来获得?
个人觉得应该通过 服务端方法来生成,客户端传递数据(除了单号字段)到服务端+服务端生成的单号,但是如果处理?
亦或者别的方法,求解答
...全文
149 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
erhan 2012-02-05
  • 打赏
  • 举报
回复
这东东是实时生成的吗?开销挺大吧。

我感觉基础数据表,再定期代码处理后复制到查询表的可能性大些吧。
奔雷手 2012-02-05
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 erhan 的回复:]

这东东是实时生成的吗?开销挺大吧。

我感觉基础数据表,再定期代码处理后复制到查询表的可能性大些吧。
[/Quote]
是 实时的。
奔雷手 2012-02-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jjwandjy 的回复:]

客户端调用Server提供的GetNextNo方法
[/Quote]
SERVER端一个方法 在TServerMethods1中,Client端调用的时候 用的是sqlservermethod控件,但是active的时候提示 sqlservermethod1:cursor not returned from query
晃晃悠悠 2012-02-05
  • 打赏
  • 举报
回复
客户端调用Server提供的GetNextNo方法

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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