SQL Server Agent运行含Pandas的Python脚本报错求助
解决SQL Server Agent调用Python脚本时Pandas依赖缺失问题
确认Agent使用的Python环境
SQL Server Agent以服务账号运行,和你本地登录的用户环境大概率不一致。先修改bat文件,添加环境检测命令:@echo off python --version > C:\agent_python_debug.txt pip list >> C:\agent_python_debug.txt python C:\你的脚本路径.py运行后打开
C:\agent_python_debug.txt,查看输出的Python版本和已安装包列表。如果里面没有pandas或python-dateutil,或者Python路径不是你本地安装依赖的那个,说明Agent用的是另一个Python环境。给Agent的Python环境安装依赖
根据上面得到的Python路径(比如C:\...\Python\Python39\python.exe),用管理员权限打开命令提示符,执行:C:\...\Python\Python39\Scripts\pip install python-dateutil pandas --upgrade这一步确保依赖包安装到Agent实际使用的Python环境中,且版本兼容。
在bat里指定完整Python路径
避免环境变量导致的路径冲突,直接在bat里写死Python可执行文件的完整路径:@echo off C:\...\Python\Python39\python.exe C:\你的脚本路径.py检查Agent服务账号的权限
在Windows服务列表中找到SQL Server Agent,查看其登录账号。确保该账号对Python安装目录、脚本所在目录、输出文件目录(比如C:\)有读写权限,否则即使依赖安装完成,也可能因权限问题无法读取模块。
内容的提问来源于stack exchange,提问作者greg_p
相关产品推荐
相关产品推荐

