在进行数据库访问的时候通常对DataReader进行数据读取的使用使用结果集列名称对数据进行读取,
在SQLite为.Net提供的驱动中使用列名进行读取的时候SQLiteDataReader内部对结果集中每一列进行遍历并且不是便利数组而是P/Invoke调用SQLite非托管函数.导致数据库数据读取性能下降.下降的程度根据结果集列数而变化.
对于已经写好的程序可以下载源代码对SQLiteDataReader类进行修改增加索引提高性能.
在进行数据库访问的时候通常对DataReader进行数据读取的使用使用结果集列名称对数据进行读取,
在SQLite为.Net提供的驱动中使用列名进行读取的时候SQLiteDataReader内部对结果集中每一列进行遍历并且不是便利数组而是P/Invoke调用SQLite非托管函数.导致数据库数据读取性能下降.下降的程度根据结果集列数而变化.
对于已经写好的程序可以下载源代码对SQLiteDataReader类进行修改增加索引提高性能.