c# SQLite查询不返回
本文关键字:返回 查询 SQLite | 更新日期: 2023-09-27 18:07:32
我有一个奇怪的问题。我尝试在SQLite表上运行查询,但它不返回内容,而是返回"System.Byte[]"。下面的代码运行查询,应该得到"text"行内容:
string q = "SELECT text FROM leiras WHERE(id=" + this.id + ");";
DataTable dt = s.executeNormalQuery(q);
DataRow dr = dt.Rows[0];
string content = dr[0].ToString();
这是s.executeNormalQuery(字符串查询):
DataTable dt = new DataTable();
try
{
SQLiteConnection con = new SQLiteConnection(this.conURL);
con.Open();
SQLiteCommand com = new SQLiteCommand(query, con);
SQLiteDataReader read = com.ExecuteReader();
dt.Load(read);
read.Close();
con.Close();
}
catch (Exception e)
{
Console.WriteLine(e.StackTrace);
}
return dt;
表格中的"text"单元格包含
cg0ovnP0w6XyBKxLQq6XaZpxAPw/lHlSx/fRjZSdmuU=
作为blob 。
好的,谢谢,我找到了。
byte[] cont = (byte[]) dr[0];
string decodedString = System.Text.Encoding.UTF8.GetString(cont);
Console.WriteLine(decodedString);
首先将DataRow 0转换为byte[],然后编码为UTF-8。