c#访问mysql显示system,请问一个很奇怪的有关问题【C#显示mysql查询结果出现System.Byte[]】...

本文讨论了一个C#程序在访问MySQL数据库时遇到的问题,即查询结果返回`System.Byte[]`而不是预期的字符串。作者提供了一段代码示例,展示如何从数据库获取数据,并在`keyCode_F1_Event`事件中执行SQL查询。当尝试从`supplierinfo`表中获取`CONCAT`函数生成的新编号时,返回结果异常。经过分析,发现问题在于将数据转换为字符串的方式不正确。解决方案是使用`Encoding.Default.GetString((byte[])D.Tables[0].Rows[0][0])`将`byte[]`转换为字符串。此外,当查询其他简单SQL语句时,如查找名为'CAT'的供应商ID,代码能正确返回结果。
摘要由CSDN通过智能技术生成

请教一个很奇怪的问题【C#显示mysql查询结果出现System.Byte[]】

本帖最后由 somezy 于 2014-06-25 18:27:56 编辑

/// 

/// GetValueOfSQL

/// 根据SQL取得数据库中的值

/// 

/// 

/// 

public static string GetValueOfSQL(string SQL)

{

DataSet D = Instance().GetDataSet(SQL);

if (D.Tables[0].Rows.Count > 0)

{

return D.Tables[0].Rows[0][0].ToString();

}

else

{

return null;

}

}

/// 

/// 取得一个记录集   无参SQL

/// 

/// 查询的sql语句

/// 成功返回一个记录集,出错抛出异常

public DataSet GetDataSet(string strsql)

{

DataSet ds=new DataSet();

MySqlCommand Command = new MySqlCommand(strsql);

Command.Connection = (MySqlConnection)Connection;

MySqlDataAdapter sqlDataAd = new MySqlDataAdapter();

sqlDataAd.Sel

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值