暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 用于按员工编号和年份创建序列号

askTom 2017-05-13
423

问题描述

我将按员工编号串联年YYYY创建序列号,为每位员工创建

创建新交易时,按员工编号自动生成序列号,终止年份并开始新年01-yyyy为所有员工创建新序列号

注:-

3个类别

Serial_number-Employee_Number-YYYY

1-serial_number: 创建新交易时自动为每个员工生成: 每个员工的最大 (Serial_number) 以及开始新年时YYYY创建从新序列号重新生成编号开始。
2- Employee_Number: 从数据库中读取员工编号。
3- YYYY: 按sysdate读取格式年份: 以及开始年份时,所有员工都会自动生成新文件 (Serial_Number)...



专家解答

这是个坏主意。

考虑一下。你想做的时刻:

next_serial = 从my_table中选择max(serial) 1

这意味着一次只有 * 每 * 1个人可以添加一行。在此期间,必须锁定整个表。因为在该行提交或回滚之前,您不能添加新行。

所以在伪代码中,你需要做:

-锁定表my_table;
- next_serial = 从my_table中选择max(serial) 1
-插入下一个 _ 串行
-提交;

在这段时间里,没有人能碰你的表。

这是个坏主意。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论