我正在尝试使用来自 ms sql server 的 pyodbc 获取数据。我收到以下错误:
ProgrammingError: ('42000', '[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]SQL 语句的某些部分嵌套太深。重写查询或将其分解为更小的查询。(191) ( SQLExecDirectW)')
代码如下:
conn = pyodbc.connect('DRIVER={SQL Server};SERVER=127.0.0.1;DATABASE=Morphemes;')
cursor = conn.cursor()
Func = list()
sql_VerbDecl = "SELECT (stem_.kök + conj_.suffix) as tokenn FROM TBL_Stem as stem_ INNER JOIN TBL_VerbDecl as conj_ on conj_.node = stem_.node;"
cursor.execute(sql_VerbDecl)
rows = cursor.fetchall()
问题是一个unicode问题。当我将 stem_.kök 更改为 stem_.kok 时,问题就解决了。