C#SQLite查询不返回

时间:2014-06-09 10:29:18

标签: c# sql .net sqlite

我有一个奇怪的问题。我尝试在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=

as blob。

1 个答案:

答案 0 :(得分:0)

好的,谢谢,我找到了它:

    byte[] cont = (byte[]) dr[0];
    string decodedString = System.Text.Encoding.UTF8.GetString(cont);
    Console.WriteLine(decodedString);

首先将DataRow 0转换为byte [],然后编码为UTF-8。