原来在linux下写的程序改到windows中来了,测试程序的时候要向mysql数据库插入测试数据,刚开始用的是mysql gui tools,没想到在sql语句框里无法输入中文(输入极为乱码),很是悲剧,于是改用mysql命令行输入中文,没想到在插入的时候出现错误“RROR 1366 (HY000): Incorrect string value: ……”,网上查了一下说是编码的问题,开始我就很怀疑,我的
mysql安装的时候选择的是utf8编码格式,对中文是没有问题的啊!它的解决方法是所有的设置成gbk,我觉得这个方法不好,因为gdk是中文编码,对其他亚洲语系的编码不一定能支持,如果要想国际化最好是utf8编码,更重要的是原来的程序在linux下面设置了大量的utf8编码,如果改数据库编码格式为gbk将会导致程序不稳定和很多潜在的bug。可是我怎么修改都不好用。弄了一整天,相当郁闷。
最后的时候想起来了windows平台默认的编码格式是gbk,所以在用命令行执行插入语句的时候命令行中的中文是gbk编码,与mysql
中的utf不同,导致出现这个错误,又因为mysql gui tools对中文支持不好,于是换了一个mysql图形工具,改用navicat,在这个软件中执行sql插入语句没有任何问题,成功插入。原来的数据库设置没有问题,是windows操作系统的默认编码格式和数据库冲突,而linux的默认编码格式为UTF-8,所以不会有这样的问题。特在这里记录下来,方便遇到同样问题的可以不像我这么费力。
总结遇到问题要多想一些,不要盲目相信网上的答案。另外navicat真的很好用(支持windows、linux和mac OS),以后就用它做mysql图形工具了。
分享到:
相关推荐
在MySQL的使用过程中,有时会遇到“ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that supports expired passwords”这样的错误提示,这表明你的MySQL密码已经过期...
标题中的"StatementInvalid: Mysql::Error: query: not connected"是一个常见的MySQL错误,提示数据库连接已断开,用户在尝试执行查询时遇到了问题。这个错误通常发生在以下几种情况: 1. **数据库连接未建立**:在...
让人纠结了一把…… 代码如下:zhouqian@zhou:~$ mysqlERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)网上好多的解决办法,可是每个人的实际情况...
erron:150相关介绍 当你试图在mysql中创建一个外键的时候,这个出错会经常发生,这是非常令人沮丧的。像这种不能创建一个.frm 文件的报错好像暗示着操作系统的文件的权限错误或者其它原因,但实际上,这些都不是的
在IT领域,尤其是在数据库管理与应用开发中,MySQL作为一款广泛使用的开源关系型数据库管理系统,其稳定性和灵活性深受用户喜爱。然而,在安装过程中遇到错误是常见的挑战,这不仅考验着用户的耐心,更需要一定的...
you can't run this command now"错误是一个常见的问题,它通常出现在多条语句连续执行时,由于某些原因导致数据连接的状态不一致,使得MySQL无法正确处理后续的命令。这个错误的根源在于MySQL的C API,当执行...
《MySQL在MetaTrader 4平台中的应用与错误处理》 MetaTrader 4(MT4)是全球金融市场广泛使用的交易平台,尤其在外汇交易中占据主导地位。MT4支持编写智能交易系统(Expert Advisors, EAs)、自定义指标和脚本,...
mysql新手容易出错的操作 <br>
例如,当数据库连接失败或SQL语句执行错误时,应捕获并处理这些异常: ```python try: conn = pymysql.connect(...) except pymysql.MySQLError as e: print(f"Error connecting to MySQL: {e}") else: try: ...
解决: 1.打开在创建mysql容器时挂载的conf目录下的mysqld.cnf(如下文件) 我创建docker的姿势 2.进入mysqlId.cnf文件中在[mysqld]下添加skip-grant-tables vim conf/mysqId.cnf 3.进入mysql容器 docker exec -it ...
在Python编程中,进行数据库操作是一项常见的任务,而MySQL作为广泛使用的开源关系型数据库,是许多开发者首选的存储解决方案。PyMySQL是Python连接MySQL数据库的一个库,它提供了类似于Python标准库DB-API(PEP 249...
PyMySQL是Python编程语言中用于连接MySQL数据库的一个库,它为Python程序员提供了与MySQL服务器通信的能力,使得在Python环境中操作MySQL数据库变得简单易行。在本文中,我们将深入探讨PyMySQL的基本概念、安装方法...
Python 和 MySQL 是两种非常重要的 IT 技术,广泛应用于数据管理、数据分析以及Web开发等领域。在本教程中,我们将...在实际项目中,结合具体的业务需求和性能优化策略,你可以构建出高效、安全的数据管理解决方案。
except pymysql.MySQLError as e: print(f"数据库操作出错: {e}") finally: # 关闭游标和连接 if cursor: cursor.close() if conn: conn.close() ``` 在机器学习项目中,pymysql的作用尤为重要。数据预处理、...
PyMySQL是一个Python的MySQL驱动程序,它提供了与MySQL数据库进行交互的功能,使得Python开发者能够方便地执行SQL语句,进行数据的增删改查操作。在Python中,PyMySQL是pymysql模块,它完全兼容DB-API 2.0规范,因此...
Python是一种广泛使用的编程语言,尤其在数据处理和Web开发领域,而MySQL则是一款流行的开源关系型数据库管理系统。当结合Python和MySQL,我们可以实现强大的数据库操作,例如数据查询、插入、更新和删除。以下是对...
此外,PyMySQL是纯Python实现,移植性和跨平台性更好,且支持Python 3.x。 ### 9. 注意事项 - 在生产环境中,确保妥善管理数据库连接,避免资源泄露。 - 性能优化方面,可以考虑使用连接池来复用数据库连接。 - ...
与MySQL数据库的交互是Python常见任务之一,特别是在数据管理项目中。MySQL是一款开源的关系型数据库管理系统,它提供了高效、可靠的数据存储和检索功能。 本教程的核心是使用Python连接并操作MySQL数据库。Python...
MySQLclient是Python编程语言中用于连接和操作MySQL数据库的一个库,它是Python的DB-API(数据库应用编程接口)的实现。这个压缩包“mysqlclient-1.3.13-cp36-cp36m-win_amd64.zip”包含了适用于Python 3.6版本、64...
Python中的`pymysql`库是用于连接MySQL数据库的一个重要工具,它提供了类似于Python标准库`DB-API`的接口,使得Python程序员可以方便地在Python程序中操作MySQL数据库。本篇文章将详细介绍`pymysql`的使用方法、核心...