说明:我现在三个表的关系是,table1插入的是机器状态(0为开机运行状态,非0为down机状态,也就是机器遇到报错了,有错误代码产生,引起机器故障停止)
table2是专门插入造成每次down机的错误代码,
table4是插入每次down机的时候,经过触发器筛选,将造成此次down机的最先报错的错误代码记录插入到table4中,筛选的条件是离table1中非0记录时间最近的错误代码。
我现在的触发器
测试过程
(1) 先在table1中插入一条开机状态记录(状态为0的记录)
(2) 在插入一条down机状态记录(状态为非0)
(3) 可见table4的效果
(4) 既然down机那就插入一条错误代码(table2暂时用tale2_1代替。)
(5)插入后,再插入一条状态为0的记录,意味着机器恢复运行。
(6)再去table4查看结果,发现刚刚插入table2-1表的数据按思路应该table4中会有错误代码的各个字段的的值,但我发现table2里面的错误代码location,pointer,itime等等,并没有把值传递给table4 的down机记录下。而是出现了一条空行记录。
我想要的效果有了一半,但那条空行记录应该是location = 'sta010' pointer='10000 'ng-time = 'getdate()' 问题是出在哪里呢??请SQL 大神、专家帮我看看~~~
可以加Q详细说明:584958184