salebill_id job_date job_man
001 2005-06-02 aa
003 2005-06-02 bb
004 2005-06-03 aa
表B
salebill_id goods_id stock_num out_id
001 A002 10 0078
001 A015 5 NULL
003 A101 100 0085
004 A520 200 NULL
out_id对应表C里的out_id,当表B插入新记录时,程序会自动从表C里获取out_id,但因为程序设计问题有时表B无法正常获取out_id的值,这样无法正常进入下一操作,
我想能不能在表A增加一个触发器,当表A插入一个新记录时,触发,并等到表B所有记录插入完毕后,再执行对新插入表B的记录进行判断out_id是否为空,如果是则从表C进行手动取值(!!只对新插入的那些记录进入操作!!)
9 个解决方案
#1
没明白啥意思
“但因为程序设计问题有时表B无法正常获取out_id的值,这样无法正常进入下一操作”
这句啥意思?
绕了半天就是想找B中的out_id是否为空,何不直接在b的触发事件里判断呢?
“但因为程序设计问题有时表B无法正常获取out_id的值,这样无法正常进入下一操作”
这句啥意思?
绕了半天就是想找B中的out_id是否为空,何不直接在b的触发事件里判断呢?
#2
使用 COLUMNS_UPDATED()函数
#3
好像不行 吧。
#4
触发器放到b表,检测当inserted里out_id为空的话,就从c表取值
可以实现
可以实现
#5
触发器不要用的太多
不然 客户骂,经理也骂
不然 客户骂,经理也骂
#6
TO netmin(网min)
这也是没办法的,因为我不是程序员,这个问题老出现,每次都要用手动去修改,咨询程序员,他说程序没有问题,是数据库的数据有问题,没办法
TO mind5(e网流星)
的确是为了查找表Bout_id是否为空,并从表C找到对应值赋给他。我也想过在表B里添加一个触发器,但在表B里插入数据实在有点多,如果在表B里设置触发,恐怕要出问题的。
这也是没办法的,因为我不是程序员,这个问题老出现,每次都要用手动去修改,咨询程序员,他说程序没有问题,是数据库的数据有问题,没办法
TO mind5(e网流星)
的确是为了查找表Bout_id是否为空,并从表C找到对应值赋给他。我也想过在表B里添加一个触发器,但在表B里插入数据实在有点多,如果在表B里设置触发,恐怕要出问题的。
#7
TO netmin(网min)
我就是知道如何只对那条新插入的数据进行触发操作(因为旧的记录的不用再处理)
我就是知道如何只对那条新插入的数据进行触发操作(因为旧的记录的不用再处理)
#8
inserted 表里的数据就是新插入的
#9
create trigger **
on table
for update as
if update (column)
begin
*****
end
on table
for update as
if update (column)
begin
*****
end
#1
没明白啥意思
“但因为程序设计问题有时表B无法正常获取out_id的值,这样无法正常进入下一操作”
这句啥意思?
绕了半天就是想找B中的out_id是否为空,何不直接在b的触发事件里判断呢?
“但因为程序设计问题有时表B无法正常获取out_id的值,这样无法正常进入下一操作”
这句啥意思?
绕了半天就是想找B中的out_id是否为空,何不直接在b的触发事件里判断呢?
#2
使用 COLUMNS_UPDATED()函数
#3
好像不行 吧。
#4
触发器放到b表,检测当inserted里out_id为空的话,就从c表取值
可以实现
可以实现
#5
触发器不要用的太多
不然 客户骂,经理也骂
不然 客户骂,经理也骂
#6
TO netmin(网min)
这也是没办法的,因为我不是程序员,这个问题老出现,每次都要用手动去修改,咨询程序员,他说程序没有问题,是数据库的数据有问题,没办法
TO mind5(e网流星)
的确是为了查找表Bout_id是否为空,并从表C找到对应值赋给他。我也想过在表B里添加一个触发器,但在表B里插入数据实在有点多,如果在表B里设置触发,恐怕要出问题的。
这也是没办法的,因为我不是程序员,这个问题老出现,每次都要用手动去修改,咨询程序员,他说程序没有问题,是数据库的数据有问题,没办法
TO mind5(e网流星)
的确是为了查找表Bout_id是否为空,并从表C找到对应值赋给他。我也想过在表B里添加一个触发器,但在表B里插入数据实在有点多,如果在表B里设置触发,恐怕要出问题的。
#7
TO netmin(网min)
我就是知道如何只对那条新插入的数据进行触发操作(因为旧的记录的不用再处理)
我就是知道如何只对那条新插入的数据进行触发操作(因为旧的记录的不用再处理)
#8
inserted 表里的数据就是新插入的
#9
create trigger **
on table
for update as
if update (column)
begin
*****
end
on table
for update as
if update (column)
begin
*****
end