我需要用update命令修改一个数据类型为char的属性 并且是中文修改 总是出现乱码
update attendance_info set att_status=\'已到\' where sno=\'2010551511\'
命令如上 表明为attendance_info 要修改的属性为att_status sno为学号
在mysql中用查询命令可以执行 但是一旦用C语言中的字符串执行就会在att_status中出现乱码 甚至无法修改
请问这个问题该如何解决
18 个解决方案
#1
中文乱码通常是多语言问题,char/varchar改成nchar/nvarchar类型试试
#2
你的字段att_status是什么类型的啊?改nvarchar就行了
#3
mysql中这些和你的字符编码有关系的。
#4
我刚看了数据库字段 没有nchar和nvarchar啊
#5
att_status是char 但是我的mysql里面没有nvarchar和nchar类型...
#7
是不是因为我字符集选择的是utf8--UTF-8 Unicode的关系所以在类型那个选项上找不到nchar和nvarchar
我用的是Navicat for MySQL管理mysql数据库,在Navicat for MySQL里面是真的没有nchar和nvarchar
可以请你告知我为什么吗?
或者教我怎样改成nchar和nvarchar数据类型 麻烦你了!
#8
这里是SQL Server,mysql我不怎么擅长,我要帮你移到mysql不?
#9
呃 当初选的时候没太注意 如果你能帮我转过去 就太感谢你了!
#10
移过去了。。
#11
你的开发环境的字符编码是什么?
在数据库执行
show variables like 'character%'
贴出结果
在数据库执行
show variables like 'character%'
贴出结果
#12
麻烦你了!
#13
谢谢你
#14
检查一下C中的连接字符串?
#15
连接字符串真的没有问题 只要不是中文就能修改 一用中文有时候乱码 有时候就完全没有修改 和具体写的中文的值有关系 但是显示查询语句成功
#16
连接字符串中可以设置字符集。
#17
懂了 我先去看看
#18
我明白了
C语言使用的字符集是gbk
在建立了连接之后 需要使用set names gbk命令来告诉mysql数据库客户端的字符集 连接的字符集 还有结果集的字符集
谢谢各位的帮助 各位的帮助让我知道了问题的方向才能找到自己的问题 谢谢各位!
C语言使用的字符集是gbk
在建立了连接之后 需要使用set names gbk命令来告诉mysql数据库客户端的字符集 连接的字符集 还有结果集的字符集
谢谢各位的帮助 各位的帮助让我知道了问题的方向才能找到自己的问题 谢谢各位!
#1
中文乱码通常是多语言问题,char/varchar改成nchar/nvarchar类型试试
#2
你的字段att_status是什么类型的啊?改nvarchar就行了
#3
mysql中这些和你的字符编码有关系的。
#4
我刚看了数据库字段 没有nchar和nvarchar啊
#5
att_status是char 但是我的mysql里面没有nvarchar和nchar类型...
#6
mysql
有nvarchar、nchar http://wiki.ispirer.com/sqlways/mysql/data-types/nvarchar_n
有nvarchar、nchar http://wiki.ispirer.com/sqlways/mysql/data-types/nvarchar_n
#7
是不是因为我字符集选择的是utf8--UTF-8 Unicode的关系所以在类型那个选项上找不到nchar和nvarchar
我用的是Navicat for MySQL管理mysql数据库,在Navicat for MySQL里面是真的没有nchar和nvarchar
可以请你告知我为什么吗?
或者教我怎样改成nchar和nvarchar数据类型 麻烦你了!
#8
这里是SQL Server,mysql我不怎么擅长,我要帮你移到mysql不?
#9
呃 当初选的时候没太注意 如果你能帮我转过去 就太感谢你了!
#10
移过去了。。
#11
你的开发环境的字符编码是什么?
在数据库执行
show variables like 'character%'
贴出结果
在数据库执行
show variables like 'character%'
贴出结果
#12
麻烦你了!
#13
谢谢你
#14
检查一下C中的连接字符串?
#15
连接字符串真的没有问题 只要不是中文就能修改 一用中文有时候乱码 有时候就完全没有修改 和具体写的中文的值有关系 但是显示查询语句成功
#16
连接字符串中可以设置字符集。
#17
懂了 我先去看看
#18
我明白了
C语言使用的字符集是gbk
在建立了连接之后 需要使用set names gbk命令来告诉mysql数据库客户端的字符集 连接的字符集 还有结果集的字符集
谢谢各位的帮助 各位的帮助让我知道了问题的方向才能找到自己的问题 谢谢各位!
C语言使用的字符集是gbk
在建立了连接之后 需要使用set names gbk命令来告诉mysql数据库客户端的字符集 连接的字符集 还有结果集的字符集
谢谢各位的帮助 各位的帮助让我知道了问题的方向才能找到自己的问题 谢谢各位!