【发布时间】:2018-01-16 17:35:57
【问题描述】:
我有一张简单的桌子。它有 5 列,其中两列是 job_num 和 line。我想在插入时将行号留空,如果没有具有该作业号的其他行,则可能使用触发器插入“1”。如果job_num 已经有一行,那么它将采用下一个行号。
这些是我的专栏
`job_Num` int,
`line` int ,
`Description` nvarchar(60),
`qty` int,
`price` int
【问题讨论】:
-
除非您处于一个非常繁忙的系统中,否则您可能不想尝试以这种方式维护线路,而是在使用 ROW_NUMBER() OVER (PARTITION BY job_NUM ORDER BY someIdOrDate) 如果 RDBMS 支持
-
触发器是高度特定于供应商的 - 所以请添加一个标签来指定您使用的是
mysql、postgresql、sql-server、oracle还是db2- 或者完全是别的东西。
标签: sql triggers auto-increment