【发布时间】:2012-03-09 01:49:41
【问题描述】:
获取与此 SQL 查询等效的 DataTable 行的查询语法是什么?
SQLiteConnection cnn = new SQLiteConnection(System.String.Format("Data Source={0}", fpath));
cnn.Open();
DataTable primaryfeed = new DataTable();
using (SQLiteTransaction dbTrans = cnn.BeginTransaction())
{
using (SQLiteCommand cmd = cnn.CreateCommand())
{
string command = System.String.Format("SELECT col1, col2, col3, col4 FROM AccountDataBase WHERE ID = @ID");
SQLiteParameter param1 = new SQLiteParameter();
param1.ParameterName = "@ID";
cmd.Parameters.Add(param1);
cmd.CommandText = command;
for (int i = 0; i < selectedIDs.Length; i++)
{
param1.Value = selectedIDs[i];
SQLiteDataReader reader = cmd.ExecuteReader();
primaryfeed.Load(reader);
reader.Close();
}
}
dbTrans.Commit();
}
cnn.Close();
所以我有一个 DataTable 和一个 ID 字符串数组。什么命令可以以最快的方式从 DataTable 中获取所有具有数组 ID 值的行?
它是否比等效的 SQL Query 慢很多?
【问题讨论】:
标签: sql select parameters datatable where