callproc을 통해 "sp_executesql"을 호출하는 데 도움이 필요합니다 (RPC로 필요함). 다른 저장 프로 시저를 실행pymssql callproc unicode - 오류를 반환합니다.
File "executesql.py", line 4, in <module>
cur.callproc("sp_executesql", 'SELECT * FROM AdventureWorks.HumanResources.Employee WHERE BusinessEntityID = 109')
File "pymssql.pyx", line 357, in pymssql.Cursor.callproc (pymssql.c:4238)
self._returnvalue = proc.execute()
File "_mssql.pyx", line 1289, in _mssql.MSSQLStoredProcedure.execute (_mssql.c:12177)
check_cancel_and_raise(rtc, self.conn)
File "_mssql.pyx", line 1322, in _mssql.check_cancel_and_raise (_mssql.c:12473)
return maybe_raise_MSSQLDatabaseException(conn)
File "_mssql.pyx", line 1366, in _mssql.maybe_raise_MSSQLDatabaseException (_mssql.c:13067)
raise ex
_mssql.MSSQLDatabaseException: (214, "Procedure expects parameter '@statement' of type 'ntext/nchar/nvarchar'.DB-Lib error message 214, severity 16:\nGeneral SQL Server error: Check messages from the SQL Server\n")
이 원활하게 진행 :이 오류가
import pymssql
conn = pymssql.connect(host='11.22.33.44:1433', user='sa', password='XYZ', database='AdventureWorks')
cur = conn.cursor()
cur.callproc("sp_executesql", 'SELECT * FROM AdventureWorks.HumanResources.Employee WHERE BusinessEntityID = 109')
이 내 코드입니다.
Traceback (most recent call last):
File "executesql.py", line 4, in <module>
cur.callproc("sp_executesql", u'SELECT * FROM AdventureWorks.HumanResources.Employee WHERE BusinessEntityID = 109')
File "pymssql.pyx", line 354, in pymssql.Cursor.callproc (pymssql.c:4177)
raise NotSupportedError('Unable to determine database type')
pymssql.NotSupportedError: Unable to determine database type
당신이 어떻게 해결하는 지 알고 있나요 : 유니 코드로 문자열을 실행 (u'Select는 ... ')이 오류를 준다?
SQL Server가 Microsoft SQL Server 2012 - 11.0.2100.60 (X64) 2012 년 2 월 10 일 19:39:15 Windows NT 6.1 (빌드 7601 : 서비스 팩)에서 Microsoft Corporation Enterprise Edition (64 비트) 1) (하이퍼 바이저)
고마워요
감사를 "없음"문제에 대한 해결책을 찾았지만, 난을 찾을 수 없습니다 보고 된 소스가 바뀌 었습니다. 그들이 어디에 있는지 아십니까? 버그를 수정 한 후 처음부터 전체를 빌드하는 데 신경 쓰지 마십시오. – roi
다운로드 섹션으로 이동하여 시스템의 버전을 다운로드하거나 압축을 푸십시오. 루트에있는 pymssql.pyx 파일에 복사합니다. 프로젝트 버전이 변경된 것 같지 않습니다. 로컬 복사본 일 수도 있습니다. 수정을 시도하는 것도 고려하고 있습니다. 문제가 해결되면 Randy의 Google 그룹이 프로젝트의 일부로 만드는 방법에 대해 설명합니다. 여기 링크 : https://groups.google.com/forum/?hl=ko&fromgroups=#!topic/ pymssql/lACWoHmAcvI – Mike
@roi, 컴파일 할 수 있었습니까? 컴파일 할 때 결과 파일이 작동하지 않습니다. – Mike