20MySQL实战:处理特殊字符的诀窍(mysqln)
MySQL实战﹕处理特殊字符的诀窍
在MySQL数据库操作中,需要处理特殊字符时会比较麻烦。例如:对于特殊字符’%’以及’@’,在psycopg2进行插入数据时会报错。
要正确处理特殊字符,可以使用MySQL中的ESCAPE函数声明特殊字符,来转义它们。
ESCAPE函数接收一个字符作为参数,并且返回一个带有反斜杠的字符串,如:
SELECT ESCAPE('%') as escape_char;
# 返回结果escape_char
\%
另外,也可以使用python的字符串格式化方法来转义特殊字符。例如,以下代码片段将转义特殊字符’%’:
import MySQLdb
db = MySQLdb.connect(host="localhost", user="root", passwd="password", db="dbname")
cursor = db.cursor()
str_str = "%s"
final_str = str_str % '%'
sqlQuery = "INSERT INTO table_name (col_name) VALUES (%s)"cursor.execute(sqlQuery, (final_str))
db.commit()
在python的字符串格式化时,一般使用%%能正确处理特殊字符,如:
final_str = str_str % '%%'
上面的代码片段说明,MySQL中的ESCAPE函数和python的字符串格式化都可以处理特殊字符。
总之,要正确处理特殊字符,可以使用MySQL中的ESCAPE函数声明特殊字符,转义它们,或者使用python的字符串格式化方法。这些诀窍有助于解决在MySQL实战使用中遇到的特殊字符处理问题。