我需要脚本通过python代码和
监视来自linux的sql server expiration在SQL输出即将发布但在linux中,它会出现以下错误:
>>> cursor.execute("select loginproperty('tibbr_db','DaysUntilExpiration')")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
pyodbc.Error: ('ODBC data type -150 is not supported. Cannot read column .', 'HY000')
答案 0 :(得分:3)
通过更改查询,显式地将LOGINPROPERTY返回值转换为整数以解决数据类型映射问题:
"select loginproperty('tibbr_db','DaysUntilExpiration')"
到此:
"select cast(loginproperty('tibbr_db','DaysUntilExpiration') as integer)"
SQL Server中的DaysUntilExpiration
属性应始终返回一个整数,因此您无法通过显式转换查看任何类型错误。
ODBC类型-150
看起来像SQL Server variant类型,pyodbc没有映射到python类型。