为了账号安全,请及时绑定邮箱和手机立即绑定

sqlserver查询,控制台应用程序

sqlserver查询,控制台应用程序

开满天机 2018-08-17 10:09:24
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 回答

?
红糖糍粑

TA贡献1815条经验 获得超6个赞

Console.WriteLine(ID) 打印一下传入的 ID 值看是否有问题


查看完整回答
反对 回复 2018-09-12
  • 1 回答
  • 0 关注
  • 792 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信