在C#中提升sqlite数据库的select语句性能

时间:2015-01-07 08:26:29

标签: c# database performance sqlite

我有一个由50列和超过120万行组成的sqlite数据库。我使用System.Data.Sqlite来使用Visual Studio 2013 C#语言。

我使用了一个非常简单的代码来从数据库中检索我的数据,但这花费了太多时间。

private SQLiteConnection sqlite;

public MySqlite(string path)
{
    sqlite = new SQLiteConnection("Data Source="+path+"\\DBName.sqlite");
}

public DataTable selectQuery(string query)
{
    SQLiteDataAdapter ad;
    DataTable dt = new DataTable();
    try
    {
        SQLiteCommand cmd;
        sqlite.Open();  
        cmd = sqlite.CreateCommand();
        cmd.CommandText = query;  //set the passed query
        ad = new SQLiteDataAdapter(cmd);
        ad.Fill(dt); //fill the datasource
    }
    catch (SQLiteException ex)
    {
        //exception code here.
    }
    sqlite.Close();
    return dt;
}

并且,select语句是:

select * from table

正如我告诉过你的,这是一个非常简单的代码。

我想知道如何提高选择操作性能以获得适当的结果。对于这段代码,这个过程需要1分钟,我希望不到1秒。

另一件事是,似乎有一些标签用于配置sqlite数据库,但我不知道在哪里应用它们。有人可以告诉我如何使用System.Data.Sqlite配置sqlite数据库;

1 个答案:

答案 0 :(得分:0)

考虑通过获取必要的列或分页来缩小结果集。