【问题标题】:Stored procedure that executes nodeJS file执行nodeJS文件的存储过程
【发布时间】:2021-12-23 17:43:07
【问题描述】:

我能找到的与标题相关的所有内容都涉及调用存储过程的 NodeJS 程序。

我的问题:可以反过来吗?有一个调用/执行 NodeJS 文件/程序的存储过程?在一个项目中,我们的数据库将提供一些数据(一些整数和一个字符串),然后将结果发送到 NodeJS 程序,该程序将数据输入到网页表单中。

我们希望存储过程直接为 nodeJS 提供数据,而不是我们最初的想法是将数据发送到批处理文件中,然后调用 nodeJS 并以这种方式传递数据以减少步骤和潜在的断点。

【问题讨论】:

    标签: node.js sql-server stored-procedures


    【解决方案1】:

    可以反过来吗?有调用/执行 NodeJS 文件/程序的存储过程吗?

    可能,是的,但它不会真正“减少步骤和潜在的断点。”。您必须让存储过程在运行 nodeJS 代码的 SQL Server 上启动一个外部进程。 SQL Server 中没有像 .NET、Python、R 和 Java 那样的内置 nodeJS 可扩展性,因此您必须使用 xp_cmdshell、sp_start_job、SSIDB 或其中一种其他语言来启动外部程序。

    这里最好的模式是让存储过程将数据写入某个表中,并让外部程序使用它并执行任何操作。例如,您可以让 NodeJS 在应用服务器上运行以轮询新数据。

    【讨论】:

    • 明白了,所以在这种情况下,其他人正在提出在存储过程中调用的想法,我主要关注 nodeJS 方面。如果我已将我的 nodeJS 代码设置为等于 process.argv 数组中相应位置的变量,这些位置在调用 nodeJS 文件时通过命令行提示符传入,那么我们是否使用存储过程可能无关紧要或者不在我这边,因为无论哪种方式都需要使用(例如)命令 node index1.js 1 2 调用 shell 你同意这个想法吗?
    • 如果调用直接来自存储过程,那么远程 SQL Server 客户端正在等待您的 NodeJS 程序完成,这可能会导致它们出现问题,并提高可靠性和错误处理的标准你。而且你必须直接在 SQL Server 上安装和运行你的 NodeJS 代码,这并不是一个好主意。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-30
    • 2012-10-10
    • 2016-12-03
    • 2010-09-15
    • 1970-01-01
    • 2018-02-09
    • 1970-01-01
    相关资源
    最近更新 更多