c#向Mysql中插入数据乱码?

问题描述

c#向Mysql中插入数据乱码。大家看一下代码。MySQLConnectionconn=null;conn=newMySQLConnection(newMySQLConnectionString("localhost","emarket","root","root").AsString);conn.Open();MySQLCommandcommn2=newMySQLCommand("setnamesgb2312",conn);commn2.ExecuteNonQuery();try{conn.Open();inti;i=dt.Rows.Count;intcount=0;for(intj=1;j<i;j++)//循环插入数据库的{stringGOODS_CODE;//商品编号stringGOODS_NAME;//商品名称GOODS_CODE=dt.Rows[j][0].ToString();GOODS_NAME=dt.Rows[j][1].ToString();stringinsertcmd1="insertintogoods(GOODS_CODE,GOODS_NAME)";insertcmd1=insertcmd1+"values('"+GOODS_CODE+"','"+GOODS_NAME+"')";//赋值写入数据库MySQLCommandcommn1=newMySQLCommand(insertcmd1,conn);commn1.ExecuteNonQuery();commn1.Dispose();在数据库里查看插入的数据是中文乱码?怎么办?Mysql为utf-8。

解决方案

解决方案二:
Server=LocalHost;Database=simkbp;UserID=root;Password=123;Charset=utf8;你在数据库连接后面加上“Charset=utf8”就不会乱码了
解决方案三:
引用1楼jim646565的回复:

Server=LocalHost;Database=simkbp;UserID=root;Password=123;Charset=utf8;你在数据库连接后面加上“Charset=utf8”就不会乱码了

这样写法怎么加conn=newMySQLConnection(newMySQLConnectionString("localhost","emarket","root","root").AsString);
解决方案四:
你不用参数构造通过属性来连接数据库不就完了...
解决方案五:
连接字符串里加~Charset=utf8;
解决方案六:
是呀...
解决方案七:
引用3楼jim646565的回复:

你不用参数构造通过属性来连接数据库不就完了...

老大,帮我写一下。我是超级菜鸟。
解决方案八:
conn=newMySQLConnection();conn.ConnectionString="Server=LocalHost;Database=simkbp;UserID=root;Password=123;Charset=utf8;"晕倒...他的属性是不是这个我不太清楚你看下那个MySQLConnection的连接数据库的属性是哪个
解决方案九:
在连接字符串中加Charset=utf8就ok
解决方案十:
引用7楼jim646565的回复:

conn=newMySQLConnection();conn.ConnectionString="Server=LocalHost;Database=simkbp;UserID=root;Password=123;Charset=utf8;"晕倒...他的属性是不是这个我不太清楚你看下那个MySQLConnection的连接数据库的属性是哪个

这个不行。
解决方案十一:
引用9楼friendly_2008的回复:

引用7楼jim646565的回复:conn=newMySQLConnection();conn.ConnectionString="Server=LocalHost;Database=simkbp;UserID=root;Password=123;Charset=utf8;"晕倒...他的属性是不是这个我不太清楚你看下那个MySQLConnection的连接数据库的属性是哪个这个不行。

那你就这样吧MySQLConnectionconn=newMySQLConnection("Datasource=localhost;Database=simkbp;UserID=root;Password=123;Charset=utf8;");数据库用户名密码这些参数自己重新设下...
解决方案十二:
引用10楼jim646565的回复:

引用9楼friendly_2008的回复:引用7楼jim646565的回复:conn=newMySQLConnection();conn.ConnectionString="Server=LocalHost;Database=simkbp;UserID=root;Password=123;Charset=utf8;"晕倒...他的属性是不是这个我不太清楚你看下那个MySQLConnection的连接数据库的属性是哪个这个不行。那你就这样吧MySQLConnectionconn=newMySQLConnection("Datasource=localhost;Database=simkbp;UserID=root;Password=123;Charset=utf8;");数据库用户名密码这些参数自己重新设下...

不支持这么写。用的MySQLDriverCS引用操作Mysql数据库的
解决方案十三:
那你看下有没哪个属性是连接数据库的
解决方案十四:
既然你的MySQL是UTF-8的字符集,已经支持中文,为什么你还要去改成GB2312呢?建议你把那句“setnamesgb2312”去掉试试。
解决方案十五:
引用9楼friendly_2008的回复:

引用7楼jim646565的回复:conn=newMySQLConnection();conn.ConnectionString="Server=LocalHost;Database=simkbp;UserID=root;Password=123;Charset=utf8;"晕倒...他的属性是不是这个我不太清楚你看下那个MySQLConnection的连接数据库的属性是哪个这个不行。

注意mysql的字符集要设置为gbk或者gb2312.看我的百度空间一篇文章有介绍:
解决方案:
OK,已经解决了,原来是没加“Charset=utf8”啊,哈哈哈,谢谢啦。

时间: 2024-10-23 08:33:59

c#向Mysql中插入数据乱码?的相关文章

mysql view 视图表-mysql中插入数据的问题,在线等

问题描述 mysql中插入数据的问题,在线等 mysql中怎样向视图表中插入数据,或者是一条sql语句同时插入数据到多张物理表中,怎样实现,在线等?! 解决方案 视图插入数据是有一定的限制的,比如说有些视图带有sum/count的就不能从视图插入一条sql语句同时插入数据到多张物理表,这个可以用存储过程或触发器来做 解决方案二: MySql插入数据,中文乱码问题MySQL数据插入问题Mysql的longblob字段插入数据问题

php网mysql数据库插入数据乱码问题?

问题描述 php网mysql数据库插入数据乱码问题? 我php页面是设置为 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 数据库的编码也是utf8 Variable_name Value character_set_client utf8 character_set_connection utf8 character_set_database utf8 char

asp中网access数据库中插入数据乱码

问题描述 asp中网access数据库中插入数据乱码 <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> meta http-eq

数据库插入-向mysql中插入数据时报错,错误提示如下,代码如下

问题描述 向mysql中插入数据时报错,错误提示如下,代码如下 com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'like,note) values (?,?,?,?,?,?

mfc-MFC向mysql中插入数据失败

问题描述 MFC向mysql中插入数据失败 MFC向mysql中插入(删除,更新)数据失败,但是查询是可以成功的,将我的插入语句在navicat for mysql中执行是可以正常插入的:INSERT INTO student VALUES ('111''xzf')求大神指导,谢谢!(据说是权限什么的问题,不太懂) 解决方案 如果确定语句是一样的,但在代码中无法正确的执行,应该就是权限的问题. MySQL的用户权限设置问题注意用户权限,与系统主机的权限 解决方案二: MySQL 插入数据

MySQL中 插入数据失败. 帮帮忙

问题描述 我所创建的表: create database mcs;use mcs;create table customer( customer_id int(8) primary key AUTO_INCREMENT, customer_name varchar(10), customer_sex varchar(2), customer_address varchar(50), id_type varchar(20), id_num varchar(20), customer_brithda

java-当用JDBC向数据库中插入数据或从数据库中提取数据时,为何有时中文字符会显示为乱码?

问题描述 当用JDBC向数据库中插入数据或从数据库中提取数据时,为何有时中文字符会显示为乱码? 当用JDBC向数据库中插入数据或从数据库中提取数据时,为何有时中文字符会显示为乱码? 怎么才能解决问题,跟jdbc driver Manager的设置有关系吗? 解决方案 数据库字符集 与 页面编码 都使得 是 uft-8?得统一 解决方案二: 建议编码格式采用UTF-8的格式 解决方案三: 在使用数据的每一个节点上,其编码方式必须要一致否则就会出现乱码.特别是使用MySQL时,客户端,连接器.数据库

编码-java向mySql插入数据乱码

问题描述 java向mySql插入数据乱码 为什么我执行以下命令行后暂时成功改成了utf8,但是退出mysql后重新进入又变成gbk编码了呢 mysql> SET character_set_client = utf8; mysql> SET character_set_results = utf8; mysql> SET character_set_connection = utf8; 解决方案 你要在my.ini需要修改两处 default-character-set=utf8 ch

hibernate-Hibernate向Mysql数据库插入数据出现乱码问号

问题描述 Hibernate向Mysql数据库插入数据出现乱码问号 在MyEclipse环境下向Mysql数据库插入数据出现乱码问号,于是做了如下设置: MyEclipse字符编码已经设为utf-8(window->preference...设置),MySQL的my.ini下设为default-character-set=utf8,hibernate.cfg.xml下jdbc:mysql://localhost:3306/users?useUnicode=true&characterEnco