dataset的数据往数据库插入,设断点跟踪了一下,没写入数据库之前正常,写入数据库之后在数据库里显示乱码了?怎么回事呢?高手指点下。
解决方案 »
- C# winHTMLEditorControl 编辑器问题
- asp.net UpdatePanel局部更新问题
- C#程序运行不了
- C#写的记事本中问题???
- 关于hashtable的问题
- 请教前辈:在vb.net中该怎样设置才能在把DataGrid控件所选的数据和上方的文本框中的数据对应起来啊?谢谢!
- XML WEB SERVICE问题!
- 自定义DataGridViewComboBoxCell控件的问题
- 请问C#里有象OutLook左边象treeview一样的控件吗?
- 如何在本地机上获取TCP报文(包),以便分析其中数据?
- 如何把 NotifyIcon 显示 ContextMenuStrip 的事件从右键改成左键?
- post的问题,急求帮助!
而且再在程式插入資料的T-SQL語句前 + N
比如一下代码乱码:IF OBJECT_ID('TEMPDB..#TEMP') >0 DROP TABLE #TEMP
CREATE TABLE #TEMP(TXT CHAR(100))INSERT INTO #TEMP
SELECT * FROM
(
SELECT A= N'SSS測試,测试þØ'
) BSELECT * FROM #TEMP
以下代码不会乱码:IF OBJECT_ID('TEMPDB..#TEMP') >0 DROP TABLE #TEMP
CREATE TABLE #TEMP(TXT NVARCHAR(100))INSERT INTO #TEMP
SELECT * FROM
(
SELECT A= N'SSS測試,测试þØ'
) BSELECT * FROM #TEMP
,只有varchar,char类型
差不多的意思。。就是你数据类型弄错了。。我以前也遇到过新手问题哈哈
//其实就是将dataset的内容读出到xml文件,然后再输出
public DataSet ISO8859_GB2312(DataSet ds)
{
string xml;
xml = ds.GetXml();
ds.Clear();
//声明字符集
System.Text.Encoding iso8859, utf8;
//iso8859
iso8859 = System.Text.Encoding.GetEncoding("iso8859-1");
//国标2312
utf8 = System.Text.Encoding.GetEncoding("utf-8");
byte[] bt;
bt = iso8859.GetBytes(xml);
xml = utf8.GetString(bt);
ds.ReadXml(new System.IO.StringReader(xml));
return ds;
}
select * from aa
a
--------------------
SSS測試,??tO(1 row(s) affected)
http://topic.csdn.net/u/20090825/16/fa49f62b-453b-4243-8f36-21ddee3cf53f.html
而调用 /// <summary>
/// 执行 SQL 语句,并返回受影响的行数
/// </summary>
/// <returns></returns>
public int ExecuteNonQuery()
{
if (string.IsNullOrEmpty(_ConnectionString))
{
throw (new Exception("无传入数据连接字串"));
} if (string.IsNullOrEmpty(_CommandText))
{
throw (new Exception("无传入SQL语句"));
} if (!DSAFConnectionTest())
{
throw (new Exception("尝试数据库连接失败"));
}
int iQuery = 0;
MySqlTransaction Transaction = null; try
{
MySqlCommand Comm = new MySqlCommand();
Conn = new MySqlConnection();
Conn.ConnectionString = _ConnectionString;
Conn.Open();
Comm.Connection = Conn;
Comm.CommandText = _CommandText; Transaction = Conn.BeginTransaction();
Comm.Transaction = Transaction; iQuery = Comm.ExecuteNonQuery();
Transaction.Commit();
return iQuery;
}
catch (MySqlException MySqlEx)
{
Transaction.Rollback();
throw MySqlEx;
}
catch (Exception ex)
{
throw ex;
}
finally
{ Transaction.Dispose();
Conn.Close();
Conn.Dispose();
}
}
就是乱码了?
如果插入数据库没乱码,调用时乱码的话,那就是你页面的编码集有问题,检查下页面的编码