python 编码中的 mysql

2023-12-08

这篇文章与我的问题相同Python 中的 MySQL:UnicodeEncodeError:'ascii'这只是为了澄清事情。

我试图将字符串保存到 MySQL 数据库,但出现错误:

文件“.smart.py”,第 51 行,位于 (数字、文本、'智能'、'u')

UnicodeDecodeError:“ascii”编解码器无法在位置解码字节 0xc2 25:序号不在范围内(128)

并且字符串保存在m['文本']

拉拉*=#&%@_?!:;-'"/()¥¡¿

这是代码片段

risk = m['Text']
msg = risk.encode('utf8')
text = db.escape_string(msg)

sql = "INSERT INTO posts(nmbr, \
       msg, tel, sts) \
       VALUES ('%s', '%s', '%s', '%s')" % \
       (number, text, 'smart', 'u')

如果我尝试注释掉 SQL 查询并输入打印文本它会打印出 Lala*=#&%@_?!:;-'"/()¥¡¿

仅在处理 SQL 时才会遇到该错误。

MySQL编码设置为utf8_unicode_ci。 (或者我应该改变这个?)

Thanks.


添加这些参数MySQLdb.connect(..., use_unicode=1,charset="utf8").

创建一个光标

cur = db.cursor()

然后像这样执行:

risk = m['Text']
sql = """INSERT INTO posts(nmbr, msg, tel, sts) \
         VALUES (%s, %s, %s, %s)"""
values = (number, risk, 'smart', 'u')
cur.execute(sql,values)  #use comma to separate sql and values, this will ensure values are escaped/sanitized
cur.commit()

现在你不需要这两行:

msg = risk.encode('utf8')
text = db.escape_string(msg)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python 编码中的 mysql 的相关文章

随机推荐

  • 编译器什么时候为类的特殊成员提供定义?

    我知道 当我定义一个空类并且根本不提供任何声明时 编译器将为默认和复制构造函数 析构函数和复制赋值运算符提供定义 其规则是什么 编译器什么时候not提供一个复制构造函数 移动构造函数和移动赋值运算符怎么样 示例 如果我的类有一个引用成员 例
  • mvn 发布:准备不提交对 pom.xml 的更改

    我正在尝试发布一个 Jenkins 插件 隐藏通知程序 使用 Maven 并面临发布插件的问题 mvn clean release prepare 运行完成时没有错误 但无法在我的本地 git 存储库中提交更改的 pom xml 尽管它确实
  • 使用正则表达式提取 URL 参数 - 重复捕获组

    我正在尝试通过正则表达式提取 URL 参数 并且非常接近让它工作 我什至知道问题是什么 我的正则表达式在重复的捕获组上遇到了困难 但我根本不知道如何解决它 语言是PHP 我的网址类似于下面的网址 它可以没有参数 只有一个或多个 member
  • 在 MapView 片段上放置自动完成小部件

    我正在尝试创建一个地图视图 其上覆盖有 PlaceAutocomplete 小部件 该视图的功能是计算从我当前位置到我在 PlaceAutocomplete 小部件中选择的位置的距离 为了更好地解释自己 我需要一个类似的片段 就像 Goog
  • 在 C# 中将 uchar[] 从本机 dll 编组到 byte[] 的正确方法

    我正在尝试将我的本机 dll 通过 CoTaskMemAlloc 分配的一些数据编组到我的 c 应用程序中 并想知道我这样做的方式是否完全错误 或者我错过了方法 c 方面的一些微妙装饰 目前我有c 方面 extern C declspec
  • 快速自动滚动 iCarousel . Linear 类型的无限效果

    我需要 iCarousel 中 线性 类型的无限自动滚动效果 并且我已经实现了 汽缸 类型的自动滚动 但我无法在 线性 类型中实现此效果 这是我在 cylind 类型中实现自动滚动的代码 carousel type linear 轮播 au
  • Xcode 9 borderColor 在用户定义的运行时属性中不起作用

    我正在用这个CALayer扩大 var borderUIColor UIColor set self borderColor newValue cgColor get return UIColor cgColor self borderCo
  • 在 C# 中将位图放置在画布中[重复]

    这个问题在这里已经有答案了 可能的重复 如何在 WPF 中将位图渲染到画布中 我想要的很简单 我想放置一个BitmapImage into a Canvas在 C 中 我的应用程序基于 WPF 我搜索了这个 发现了类似的问题 但找不到我要找
  • JS中如何列出所有元素属性?

    我想知道 JS 中元素的所有可能属性 I did s document getElementById idSvg r s attributes alert r length
  • pyspark:使用 Spark-submit 发送 jar 依赖项

    我写了一个 pyspark 脚本来读取两个 json 文件 coGroup它们并将结果发送到elasticsearch集群 当我在本地运行它时 一切都按预期工作 大部分 我下载了elasticsearch hadoopjar 文件为org
  • 如何使用scrapy抓取各种标签之间包含的文本

    我正在尝试从中抓取产品描述link 但是我如何抓取整个文本 包括之间的文本 标签 这是 hxs 对象hxs select div class overview div text extract 但原来的 HTML These classic
  • 使用PowerShell修改JSON文件而不编写BOM

    我需要使用 PowerShell 修改现有的 UTF8 编码 JSON 文件 我尝试使用以下代码 fileContent ConvertFrom Json Get Content filePath Encoding UTF8 fileCon
  • 使用 pandas 在数据框中创建动态列

    如何从此 pandas 数据帧创建动态列 Name Sex a M b F c M d F 预期数据框 Name M F a 1 0 b 0 1 c 1 0 d 0 1 我已经尝试过 pandas pivot 但没有用 你们能提出一些建议吗
  • 快速解析查询结果未出现在表视图中

    我在显示我在表格视图的各个单元格中进行的查询中的数据时遇到了困难 我相信我的逻辑是正确的 但我没有看到我在包含 Parse 查询数据的函数中调用的 console log 这可能是一个简单的修复 但目前我还没有想到 我应该看到的控制台日志是
  • 如何使用 io2 EBS 卷启用 ReadWriteMany 访问模式

    我想启用ReadWriteManyEKS 持久卷中的访问模式 遇到 EBS AWS 的 io2 卷类型 使用 io2 类型卷的 SSO 存储类 yaml apiVersion storage k8s io v1 kind StorageCl
  • org.hibernate.boot.MappingNotFoundException:找不到映射(资源)

    我一直在尝试使用一个小例子来实现休眠 下面是我的 hibernate config xml
  • 在具有 3 个 y 轴的单个图中绘制 4 条曲线

    我有 4 组值 y1 y2 y3 y4 和一组 x y 值具有不同的范围 我需要将它们绘制为单独的曲线 并在 y 轴上具有单独的值集 简单来说 我需要 3 个具有不同值 比例 的 y 轴来在同一个图形上绘制 试试这个 The data ha
  • 使用 ggplot2 渐变填充小提琴图

    我想根据箱中点的密度梯度填充小提琴图 蓝色表示最高密度 红色表示最低密度 我使用以下命令生成了一个图 但未能根据密度 在本例中为小提琴的宽度 对其进行着色 我还想生成具有类似颜色的箱线图 library ggplot2 data diamo
  • MySQL:基于另一列的值对一列进行求和

    我想要一个基于另一列的值是这个 那个的列的总和 这是我的表结构 id leave hours leave type overtime hours employee id 1 7 6 1 0 3 2 5 2 0 3 3 0 0 2 3 3 我
  • python 编码中的 mysql

    这篇文章与我的问题相同Python 中的 MySQL UnicodeEncodeError ascii 这只是为了澄清事情 我试图将字符串保存到 MySQL 数据库 但出现错误 文件 smart py 第 51 行 位于 数字 文本 智能