易语言mysql乱码_分享一个解决MySQL写入中文乱码的方法

【编程语言:易语言】

之前有发帖请教过如何解决MySQL写入中文乱码的问题。但没人会,或者是会的人不想回答。搜索网上的答案并尝试很多次无效,所以当时就因为这个乱码问题搁浅了一个软件很多日子。

直到昨天又一次互联网搜索,尝试很多次后,终于解决了乱码问题,再一鼓作气完成了软件的全部功能。

喜悦之余,也想到肯定有很多人被这个问题所困扰,他们的心情我是理解的。所以我决定分享下这个方法。

1、首先在连接MySQL之后,执行SQL语句 (连接句柄, “set names 'GBK'”),这样才能读取库名、表名、记录数据时显示中文。当然也可以 执行SQL语句 (连接句柄, “set names 'utf8'”),然后读取数据出来后,转换UTF8编码为ANSI编码即可(转换模块、源码多了去,自己找)。

2、原本以为第一条执行后能输出中文了,输入中文应该没问题。但就是输入中文有问题,原因就在,使用MySQL支持库的创建库和创建表命令创建后的库表,默认都是拉丁字符集(当然是我这里发现的情况,不是所有情况都这样)。所以要这样:

创建库之后,执行SQL语句 (连接句柄, “ALTER DATABASE `库名` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;”)

创建表之后,执行SQL语句 (连接句柄, “ALTER TABLE `表名` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;”)

这样就可以正常输入中文了。

3、由于写入记录时使用单引号包括数据,所以数据中如果有单引号就必须转义,删除记录的条件语句也要求转义。转义的处理方法:

字段值 = 子文本替换 (子文本替换 (子文本替换 (字段值, “\'”, “\|”, , , 真), “'”, “\'”, , , 真), “\|”, “\\\'”, , , 真)

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
易语言中使用MySQL数据库进行多条数据的写入可以通过以下步骤实现: 1. 连接数据库:首先需要使用 `mysql_连接` 函数连接到MySQL数据库服务器。可以设置连接的服务器地址、用户名、密码等信息。 2. 选择数据库:使用 `mysql_选择数据库` 函数选择要操作的数据库。需要指定要操作的数据库名称。 3. 准备SQL语句:定义一个SQL语句字符串,可以使用 `字符串型` 类型的变量来保存。 4. 执行SQL语句:使用 `mysql_执行SQL语句` 函数执行准备好的SQL语句。这个函数会将执行结果返回给一个变量。 5. 多条数据写入:使用循环结构(如 `for` 循环)将要写入的多条数据逐一写入数据库。在每次循环中,可以根据需要修改SQL语句中的参数值。 6. 关闭数据库连接:使用 `mysql_关闭` 函数关闭与MySQL数据库服务器的连接。 示例代码如下: ```easy // 连接数据库 mysql_连接("localhost", "root", "123456") // 选择数据库 mysql_选择数据库("mydatabase") // 准备SQL语句 sql语句 = "INSERT INTO 表名 (字段1, 字段2) VALUES ('值1', '值2')" // 多条数据写入 for i = 1 to 10 step 1 // 修改SQL语句中的参数值 字段1值 = "值" + i 字段2值 = "值" + i + 1 // 执行SQL语句 mysql_执行SQL语句(sql语句) // 关闭数据库连接 mysql_关闭() ``` 上述示例代码中,假设要向名为 `表名` 的数据库表中插入10条记录,每条记录的字段1和字段2的值都是根据循环变量 `i` 动态变化的。你可以根据实际需求修改相应的表名、字段名和值。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值