Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在插入SQL Server数据库表时执行.exe?_Sql_Sql Server - Fatal编程技术网

如何在插入SQL Server数据库表时执行.exe?

如何在插入SQL Server数据库表时执行.exe?,sql,sql-server,Sql,Sql Server,每当在SQL Server数据库的某个表中插入新行时,我需要执行一个.exe文件。不确定我是否应该使用触发器、存储过程或其他东西。欢迎所有建议。要在添加行时执行某些操作,您肯定需要一个触发器。 要执行EXE,我知道的唯一方法是使用XP\u CMDSHell。 这在默认情况下不启用 所以,这是可以做到的。尽管您可能会遇到权限问题 更好的方法可能是使用触发器对“作业”表执行插入,然后设置代理作业或类似作业,每隔一段时间检查该表并相应地运行exe 总的来说,这是一个非常糟糕的主意。你为什么要这样做?演

每当在SQL Server数据库的某个表中插入新行时,我需要执行一个.exe文件。不确定我是否应该使用触发器、存储过程或其他东西。欢迎所有建议。

要在添加行时执行某些操作,您肯定需要一个触发器。 要执行EXE,我知道的唯一方法是使用XP\u CMDSHell。 这在默认情况下不启用

所以,这是可以做到的。尽管您可能会遇到权限问题


更好的方法可能是使用触发器对“作业”表执行插入,然后设置代理作业或类似作业,每隔一段时间检查该表并相应地运行exe

总的来说,这是一个非常糟糕的主意。你为什么要这样做?演出将受到很大影响。或者,您可以标记“受影响的行”,并生成一个定期运行的外部程序来查找这些行,并进行相应的处理。我需要在Loftware打印服务器上自动执行打印作业,以便在产品准备发货时打印发货标签。为什么这是个坏主意?像这样每秒检查产品的程序对系统的影响会比我建议的小吗?在每一行插入/更新时启动一个外部进程可能会导致严重的性能问题。也许一个周期性的过程(甚至每60秒)可能是一个更好的解决方案。触发器可以在“标签”表上记录对新标签的需求,然后周期性流程只能读取该表。由于我正在处理的装运流程的时间安排,任何此类流程最多只能每秒检查一次。这与启动外部进程相比如何?我投票支持由侦听器轮询的“暴露”表。