如何在SQL Server中创建Python CLR过程?

 fdsfdsfsfsfsfsfsfsfsafsf 发布于 2023-02-10 14:14

我们想在sql server 2008上从tsql调用一些python.

python脚本完全开发并且运行良好.我们无法从客户端应用程序触发任何内容,因为它是封闭源代码,无法修改.

因此,我们可以完全访问SQL Server(2005和2008),并且可以看到"触发器"记录被插入...并且需要在发生这种情况时触发我们的python代码.

我们不想使用xp_cmdshell来启动老式的python脚本,而是尽可能地将其作为"sql native".(xp_cmdshell可以工作,但在几个级别上很吓人.)

这样做的路径是什么?

1 个回答
  • [编辑]根据Paul White的评论,IronPython(以及依赖于动态生成的代码的任何其他内容)不能在SQLCLR对象中使用.

    这使得以下声明不正确.我会留在这里为未来的访客.

    为了使用Python编写SQL CLR对象,您需要使用IronPython,并手动创建.py文件,其中包含.Net运行时所需的正确指令,以定位所需的.Net SQL CLR库.我不知道你需要在Python中使用的精确指令.

    http://IronPython.net包含可用于此目的的.Net版本的Python.

    说了这么多,Visual Studio 2012适用于使用C#或VB.Net来创建SQL Server CLR程序集.为了以一种好的,自动化的方式这样做,您需要创建一个"SQL Server数据库"项目,然后根据需要将解决方案的默认语言更改为C#或VB.Net.然后单击"项目 - >添加新项"并选择"SQL CLR触发器".这样可以自动设置函数声明等,以便"正常工作"SQL Server.

    2023-02-10 14:16 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有