E语言解决MySQL写入中文乱码
.版本 2
.支持库 mysql
.支持库 spec
数据库句柄 = 连接MySql (“127.0.0.1”, “root”, “3105501510”, “xiaoyang”, 3306)
执行SQL语句 (数据库句柄, “set names 'GBK'”)
.如果真 (数据库句柄 = 0)
信息框 (“连接远端服务器数据库失败”, 16, , )
SQL语句 = “select * from tiku where title like” + #左边 + 题目 + #右边
.如果 (执行SQL语句 (数据库句柄, SQL语句))
记录集句柄 = 取记录集 (数据库句柄)
查询结果集行数 = 取记录集行数 (记录集句柄)
调试输出 (查询结果集行数)
读字段值 (记录集句柄, “id”, 题目内容 [1])
读字段值 (记录集句柄, “type”, 题目内容 [2])
读字段值 (记录集句柄, “title”, 题目内容 [3])
读字段值 (记录集句柄, “option_a”, 题目内容 [4])
读字段值 (记录集句柄, “option_b”, 题目内容 [5])
读字段值 (记录集句柄, “option_c”, 题目内容 [6])
读字段值 (记录集句柄, “option_d”, 题目内容 [7])
读字段值 (记录集句柄, “answer”, 题目内容 [8])
读字段值 (记录集句柄, “source”, 题目内容 [9])
.判断开始 (题目内容 [2] = “1”)
题目内容 [2] = “单选”
.判断 (题目内容 [2] = “2”)
题目内容 [2] = “多选”
.判断 (题目内容 [2] = “3”)
题目内容 [2] = “判断”
.默认
题目内容 [2] = “未知”
.判断结束
.如果真 (题目内容 [9] = “”)
题目内容 [9] = “貌似没有”
.如果真结束
编辑框1.内容 = 题目内容 [1]
编辑框2.内容 = 题目内容 [2]
编辑框3.内容 = 题目内容 [9]
编辑框4.内容 = 题目内容 [4]
编辑框5.内容 = 题目内容 [5]
编辑框6.内容 = 题目内容 [6]
编辑框7.内容 = 题目内容 [7]
编辑框8.内容 = 题目内容 [8]
' 读字段值 (记录集句柄, 0, 题目内容 [1])
' 读字段值 (记录集句柄, 1, 题目内容 [2])
' 读字段值 (记录集句柄, 2, 题目内容 [3])
' 读字段值 (记录集句柄, 3, 题目内容 [4])
' 读字段值 (记录集句柄, 4, 题目内容 [5])
' 读字段值 (记录集句柄, 5, 题目内容 [6])
' 读字段值 (记录集句柄, 6, 题目内容 [7])
' 读字段值 (记录集句柄, 7, 题目内容 [8])
' 读字段值 (记录集句柄, 9, 题目内容 [9])
' 读字段值 (记录集句柄, 10, 题目内容 [10])
' 调试输出 (题目内容)
释放记录集 (记录集句柄)
.如果真 (自动复制 = 真)
first = 编辑框8.内容
置剪辑板文本 (编辑框8.内容)
.如果真结束
.否则
信息框 (“数据库查询错误!”, 0, , )
.如果结束
问题解决
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;”)
微信关注
阅读剩余
版权声明:
作者:理想
链接:https://www.imyjs.cn/archives/445
文章版权归作者所有,未经允许请勿转载。
THE END