如何从一个带单引号的字符串中转义来进行插入?

问题描述 投票:0回答:1

我想插入 N "Pepito Malasanya O'Dhogerty" 在Python 3上,但不能转义单引号,PYODBC上的错误是。

"Incorrect syntaxis".

我知道我必须再加一个(O''Dhogerty),但我尽了最大努力,尝试了所有我看到的东西,但没有解决它。

这就是我到目前为止所做的。

string = string.replace("'", "\\'\\'")

更新了。

因为我在字符串前面用了 "N"(因为我有 "a "这样的字符)

现在我有了。

row[0] = row[0].replace("'","\'\'")

pyodbc.ProgrammingError: ('42S22', "[42S22] [Microsoft][ODBC SQL Server Driver][SQL Server]El nombre de columna 'Pepito Malasanya O''Dhogerty' no es válido. (207) (SQ LExecDirectW)")

我到底做错了什么?我打算按照你说的检查参数化查询。

sql-server python-3.x pyodbc
1个回答
0
投票

解決方法:我在做execute方法的时候,用了 "O''Dhogerty"。

我在做执行方法的时候 '{}'.format... 但它不工作与插入这样的特殊字符,我改成了 cursor.execute("INSERT INTO table VALUES (?,?,?,?,?,?,?,?,?,?)",value1, value2....) 和任何问题

谢谢你的帮助

© www.soinside.com 2019 - 2024. All rights reserved.