找回密码
 加入
搜索
查看: 9334|回复: 15

[AU3基础] 【已解决】向mysql数据库插入中文显示乱码

  [复制链接]
发表于 2010-8-2 18:17:28 | 显示全部楼层 |阅读模式
本帖最后由 leon 于 2018-4-15 08:40 编辑

各位老大,通过mysql.udf向mysql中插入中文数据的时候总是显示乱码,请高手帮忙解答下,谢谢。
字符默认是utf8。
附件为mysql.udf,以下为插入数据代码片段:
$Inputname = InputBox("用户名", "请输入将要添加的考勤用户名。", "", "", -1, 120)
                Sleep(100)
                $Inputpassword = InputBox("密码", "请输入考勤密码。", "", "", -1, 120)
                Sleep(100)
                $line = "INSERT INTO user VALUES (" & "''," & "'" & $Inputname & "', " & "'" & $Inputpassword & "')"

                $connect = _MySQLConnect("attendance", "attendance", "attendance_record", "127.0.0.1", "{MySQL ODBC 3.51 Driver}", 3306)
                If $connect = 0 Then
                        MsgBox(0, "失败", "连接数据库失败")
                EndIf

                If @error = 1 Then
                        MsgBox(0, "错误", "无法打开数据库")
                ElseIf @error = 2 Then
                        MsgBox(0, "错误", "没有安装ODBC3.51的驱动")
                EndIf
                ;Connect attendance_record database via mysql ODBC3.51 driver.

                $Addusers = _Query($connect, $line)
                If $Addusers = 0 And @error = 1 Then
                        MsgBox(0, "失败", "数据库连接有问题,用户添加失败。")

                Else
                        MsgBox(0, "成功", "考勤系统成功添加" & $Inputname & "用户")
                EndIf
解决方案如下:
$setchar = "set names 'gbk'"
_Query($connect, $setchar)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2010-8-3 12:59:31 | 显示全部楼层
没有人肯指点一下吗?我自己顶。。。
 楼主| 发表于 2010-8-4 08:46:33 | 显示全部楼层
怎么没有人愿意帮我啊,在线等。。。
 楼主| 发表于 2010-8-5 09:36:53 | 显示全部楼层
自己顶,在线等。。。
 楼主| 发表于 2010-8-5 13:52:08 | 显示全部楼层
已经搞定。。。。
发表于 2010-8-8 08:58:06 | 显示全部楼层
是怎么搞定的 能共享下吗?
发表于 2010-8-23 11:42:11 | 显示全部楼层
我也在寻找解决办法, 希望楼主指点一下,谢谢。
发表于 2010-9-1 21:06:42 | 显示全部楼层
_MySQL_Query($MysqlConn, "set names gbk")

在连接mysql后运行一下这个命令 设置下字符集就ok了
楼主咋不贴出来大家分享
发表于 2011-2-11 14:51:05 | 显示全部楼层
_MySQL_Query($MysqlConn, "set names gbk")

在连接mysql后运行一下这个命令 设置下字符集就ok了
楼主 ...
my788521 发表于 2010-9-1 21:06



    以前我也有同样的疑问
发表于 2011-6-15 16:36:40 | 显示全部楼层
注意一下。你这一招并非全部都通用的。视mysql主机的字符集而定。
你这个问题乱码是因为mysql字符集的问题而非客户端。程序默认是以utf8编码的。
而mysql的编码有非常多的。如果把mysql设置正确了也不会存在乱码的问题。
发表于 2011-11-21 09:47:39 | 显示全部楼层
_MySQL_Query($MysqlConn, "set names utf8")
这一个不知为什么会出显乱码,现在我想把字符使用utf8的显示
发表于 2013-2-21 17:17:46 | 显示全部楼层
我用gbk, insert into 中文值进不进mysql,换成英文就insert into 成功了,但是用mysql-Front后台插入中文就完全OK.字段属性是varchar,怎么回事,希望回复.
发表于 2013-3-13 15:36:55 | 显示全部楼层
回复 12# scorpio1102
这个问题解决了吗?我也出现了一样的问题,现在不知道怎么解决呢
发表于 2013-3-13 15:40:12 | 显示全部楼层
回复 9# haodd

想知道各位是怎么将中文输入进去的,我这边只要有中文的就插入不进去,换成英文就可以。
发表于 2013-5-24 19:07:41 | 显示全部楼层
UTF8不也支持中文吗?难道非要修改成gbk吗?
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-4-20 01:48 , Processed in 0.082062 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表