wenji643
wenji643
2015-05-29 03:35

各位高手,请帮小妹解决一个数据库inserted表问题,在线等,谢谢

  • into
  • 数据
  • select
  • 数据库

表ST_ZLZB_R,里面项目STCD站号,TM时间,DRP数据,许多站点会在同时或异时陆续向中心传输数据,如'31128010','2015-05-29 10:30:00.000','12'。其中有两个站点stcd为31128020和31128010,我的想让31128020或者是31128010这两个站来的数据drp这一项是大于24时drp会变为0再插入zlzb表里,例如:31128010站上传'31128010','2015-05-29 10:30:00.000','25',则表ST_ZLZB_R插入的这条数据会变为'31128010','2015-05-29 10:30:00.000','0'。我写了个触发器提示重复项不对,有大神能帮我看看改改吧,谢谢。
ALTER TRIGGER [dbo].[INSERT_RECORD1_31128020]
ON [dbo].[ST_ZLZB_R]
AFTER INSERT
AS
BEGIN
IF EXISTS(SELECT * FROM INSERTED WHERE ((STCD ='31128020') or(STCD ='31128010') )and ( DRP>24.5 ))
INSERT INTO ST_ZLZB_R SELECT '31128020',TM,0,INTV,PDR,DYP,WTH FROM INSERTED where STCD ='31128020'
INSERT INTO ST_ZLZB_R SELECT '31128010',TM,0,INTV,PDR,DYP,WTH FROM INSERTED where STCD ='31128010'
END
或者是能不能编一个触发器,当表ST_ZLZB_R进入的数据drp>24的时候相应的这条数据就不入表,也不耽误其他drp小于24的记录写入表ST_ZLZB_R,要是这样编的话要怎么写触发器?请老师帮我想想办法吧,现在脑子一团浆糊。

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

3条回答