我需要在txt文件中写入带有所有值转义的sql语句,以便以后可以将其导入mysql数据库。
在Server中,我可以包含N'‘之间的任何文本,并且它会接受它。在MySQL中有类似的地方吗?
server中的示例:n‘’My转义文本不受单引号->‘或双引号“的影响
注意,我用N'‘包围了文本。
提前感谢!
发布于 2014-06-01 01:10:23
你要学习如何使用预先准备好的语句。它们为您解决了几个问题,包括转义字符和防止SQL注入。下面是MySQLdb的一个示例:
myValues = (value1, value2)
sql = "INSERT INTO myTable (column1, column2) VALUES (%s, %s)"
cursor.execute(sql, myValues)===
对不起,我想我误解了你的问题。您不希望编写一个Python脚本来读取文件并将数据插入数据库。您希望使用Python生成可以直接导入数据库的SQL文档。
我建议使用Python查询数据库,但是如果您真的想创建一个SQL文档,那么您的所有数据值都需要用单引号括起来,如果数据中有单引号,可以使用双引号转义它们:
INSERT INTO myTable (column1, column2) VALUES ('My data', 'John''s data');如果分号(;)在单引号中,则其他特殊字符将被忽略。
如果您担心表名和列名中的特殊字符,可以向它们添加回标:
INSERT INTO `myTable` (`column1`, `column2`) VALUES ('My data', 'John''s data');https://stackoverflow.com/questions/23974807
复制相似问题