LabVIEWwilliam hill官网
直播中

xxx

8年用户 554经验值
擅长:电源/新能源 制造/封装
私信 关注
[问答]

labview无法将中文写入mysql数据库

这个问题刚刚出现,我没有很深入地去调查,可能是一个小问题而已。

labview向Mysql数据库中写入数据时,英文、数字没问题,但是没有中文。也没有出现乱码,就是完全消失了。所以这也可能是labview直接把中文过滤掉了。。

数据库是Mysql,服务器、数据库、客户端的字符编码都已经设置为GB2312(之前的经验,貌似Labview默认的字符编码是GB2312)。
如下图: 无标题4.png

数据库是用ODBC方式连接的。读取、查询均正常。且读取数据库时,中文可以读取(这个中文是用PHP写进去的)。
数据库用sql语句插入中文,可以插入并正常显示。
Labview插入数据程序如下:
无标题5.png
命令行中数据库如下图:
无标题6.png
可以看到,插入中文的地方,都是空白。
无标题7.png
Labview读取视图。同样没有内容。
求大神指明,问题可能出在哪里。
另外,Labview有没有字符编码转换函数,貌似没有的。以前有一个同样的问题,保存xml时,无法以UTF8形式保存,后来没有改labview,在PHP中加了转换函数才勉强解决。


回帖(14)

871778

2016-12-17 00:02:32

最佳答案

1.首先排查你的Labview中文是否有输出,如果已输出就是Mysql的设置问题。我之前尝试过UTF输入中文会乱码,但是中文字串不会消失。
2.我的Mysql使用的编码方式是GBK,Mysql输入中文没有问题。
举报

xxx

2016-12-18 11:28:03
问题解决,在ODBC创建连接时,设置驱动器类型那里,要选择ANSI,不要选择Unicode。在与labview进行交互时,涉及到字符编码问题,要知道,Labview默认采用系统编码,即ANSI。ANSI在中文Windows下,就等于GB2312。
举报

花天狂骨0573

2016-12-19 09:48:28
学到一招学到一招学到一招学到一招
举报

阿程

2016-12-19 10:14:57
引用: 羊驼啊 发表于 2016-12-18 11:28
问题解决,在ODBC创建连接时,设置驱动器类型那里,要选择ANSI,不要选择Unicode。在与labview进行交互时,涉及到字符编码问题,要知道,Labview默认采用系统编码,即ANSI。ANSI在中文Windows下,就等于GB2312。

设置驱动?不是用连接字符串吗?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分