在Python中向SQL Server插入特殊字符或其他语言字符,可以使用参数化查询和转义字符来实现。
import pyodbc
# 连接到SQL Server数据库
conn = pyodbc.connect('DRIVER={SQL Server};SERVER=<服务器地址>;DATABASE=<数据库名>;UID=<用户名>;PWD=<密码>')
# 创建游标
cursor = conn.cursor()
# 准备查询语句,使用参数占位符 '?'
query = "INSERT INTO table_name (column1, column2) VALUES (?, ?)"
# 定义要插入的参数值
value1 = "特殊字符 ' \" \n \r \t \\"
value2 = "其他语言字符 é Ö"
# 执行查询,将参数值作为第二个参数传递给 execute() 方法
cursor.execute(query, (value1, value2))
# 提交事务
conn.commit()
# 关闭连接
conn.close()
在上述示例中,参数化查询使用问号作为占位符,并将要插入的特殊字符或其他语言字符作为参数值传递给 execute() 方法。
以下是一个示例代码:
import pyodbc
# 连接到SQL Server数据库
conn = pyodbc.connect('DRIVER={SQL Server};SERVER=<服务器地址>;DATABASE=<数据库名>;UID=<用户名>;PWD=<密码>')
# 创建游标
cursor = conn.cursor()
# 准备查询语句,将特殊字符或其他语言字符使用单引号进行转义
query = "INSERT INTO table_name (column1, column2) VALUES ('特殊字符 '' \" \n \r \t \\', '其他语言字符 é Ö')"
# 执行查询
cursor.execute(query)
# 提交事务
conn.commit()
# 关闭连接
conn.close()
在上述示例中,特殊字符或其他语言字符被单引号括起来,并且内部的单引号也被转义为两个单引号。
注意:为了提高代码的安全性和可维护性,推荐使用参数化查询方法来插入特殊字符或其他语言字符。
领取专属 10元无门槛券
手把手带您无忧上云