簡體   English   中英

無法使用 pyodbc python 模塊查詢 EXEC 命令

[英]can't query EXEC command with pyodbc python module

我正在使用 pyodbc 查詢 MSQLS 數據庫,在我嘗試使用 EXECUTE 命令之前一切正常

例子

querys= """
    EXEC sys.xp_instance_regread N'HKEY_LOCAL_MACHINE', N'HARDWARE\DESCRIPTION\System\CentralProcessor\0', N'ProcessorNameString';
    """

我明白了

pyodbc.ProgrammingError: No results.  Previous SQL was not a query.

我也嘗試使用 ODBC 方式

query= r'{call sys.xp_instance_regread ("HKEY_LOCAL_MACHINE", "SYSTEM\CurrentControlSet\services\pvscsi\Parameters\Device", "DriverParameter")}'

我得到

pyodbc.DataError: ('22018', '[22018] [Microsoft][ODBC Driver 17 for SQL Server]Invalid character value for cast specification (0) (SQLExecDirectW)')

有什么想法可以解決這個問題嗎? 提前致謝

您的 arguments 到存儲過程包含反斜杠,因此您必須在常規字符串文字中將它們加倍...

" ... N'HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0', ... "

...或使用“原始字符串”

r" ... N'HARDWARE\DESCRIPTION\System\CentralProcessor\0', ... "

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM