如何在SQL 2017 sp_execute_external_script中使用外部python模块?

时间:2018-12-31 00:02:13

标签: python sql-server

我正在测试SQL 2017机器学习服务,该服务可让您在存储过程中运行python脚本。当在存储过程本身中定义脚本时,我看到了很多有关如何运行python脚本的示例,但是我想知道如何导入自己的python模块。像这样:

EXEC sp_execute_external_script
@language = N'Python',
@script = N'
from test import sample
x = sample.SomeClass()
x.SomeFunction()
'

这可能吗?我还有另一种方法可以在SQL中运行自己的python脚本吗?

1 个答案:

答案 0 :(得分:0)

是的,您可以通过在代码中添加test模块的位置来扩展sys.path环境变量来做到这一点

EXEC sp_execute_external_script
@language = N'Python',
@script = N'
import sys
sys.path += ['D:\\path_to_your_test_module']
from test import sample as sa
x = sa.SomeClass()
x.SomeFunction()
'