sqlserver数据库中某个表写了一个触发器:USE [MNRYMAS]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[tritest]
ON [dbo].[Equip_LAirCompressor]
after insert
AS
BEGIN
declare @newID varchar(50),@Result varchar(100)
select @newID=ID from inserted set @Result = 'D:\Debug\Test_GetData.exe "'+@newID+'"'
EXEC master..xp_cmdshell @Result
SET NOCOUNT ON;
END该触发器是数据库添加数据时调用一个外部的exe(控制台应用程序)。传入参数就是当前插入数据的id。控制台应用程序根绝这个id去查询这条插入的数据进行操作。具体得查询方式如下:但是,当把ID当参数传入应用程序时,直接到 SqlDataReader read = cmd.ExecuteReader(); 这句就会报错,错误:Timeout expired.如果按照上面ID的注释方式传入(string ID = "151055";),直接在程序中吧参数写入进行测试的话,就没有问题。崩溃了,就是一个是传入的,一个是写死的,传入就不行呢?参数是可以传进去的。
- 1 回答
- 0 关注
- 792 浏览
添加回答
举报
0/150
提交
取消