Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python从SQL中选择获取错误_Python_Sql - Fatal编程技术网

Python从SQL中选择获取错误

Python从SQL中选择获取错误,python,sql,Python,Sql,我正在写以下问题: x1 = 5 y1 = 6 z1 = 0 SQL = ("SELECT Z FROM Points WHERE X =x1 AND Y = y1") for row in cursor.execute(SQL): z1 = row.Zcor 我得到以下错误: 回溯(最近一次呼叫最后一次): 文件“./ppp.py”,第38行,在 对于cursor.execute(SQLp1z)中的行: pyodbc.ProgrammingError:('42000'

我正在写以下问题:

x1 = 5
y1 = 6
z1 = 0
SQL = ("SELECT Z FROM Points WHERE X =x1 AND Y = y1")
    for row in cursor.execute(SQL):
        z1 = row.Zcor
我得到以下错误:

回溯(最近一次呼叫最后一次): 文件“./ppp.py”,第38行,在 对于cursor.execute(SQLp1z)中的行: pyodbc.ProgrammingError:('42000',“[42000][Microsoft][\xc4\xf0\xe9\xe2\xe5\xf0-ODBC-Microsoft Access]\xcd\xe5\xee\xef\xf0\xe5\xe4\xe5\xe5\xed\xed\xe0\xff\xf4\xf3\xea\xf6\xe8\xff“转换”\xe2\xe2\xe2\xe2\xfb\xf0\xe6\xe5\xe8\xe8.(-3102)(SQLExecDirectW))


我的代码中有什么错误?为了防止这种情况发生,我需要做些什么?

您的问题是字符串中没有正确包含变量。使用字符串格式:

SQL = ("SELECT Z FROM Points WHERE X ={x1} AND Y ={y1}".format(x1=x1, y1=y1)
或者在python 3.6中:

SQL = (f"SELECT Z FROM Points WHERE X ={x1} AND Y ={y1}")

是for循环的间距变小了,还是这就是您复制它的方式?看看这个,看起来您没有在查询字符串中正确地包含变量。