【发布时间】:2014-02-06 19:13:50
【问题描述】:
好的,我有一个 SQL DB2 连接,它运行一个查询并将结果存储到一个 DataTable 中。然后将此 DataTable 加载到 DataGrid 中。该查询也在它自己的线程中运行,并使用调度程序来更新 UI。
这是我的代码示例:
using(DB2Connection conn = new DB2Connection("xyz"))
{
string DB2Query = query;
if(conn.State == ConnectionState.Closed) conn.Open();
DB2Command cmd = new DB2Command(DB2Query, conn);
cmd.CommandType = System.Data.CommandType.Text;
DB2DataAdapter adapter = new DB2DataAdapter(cmd);
DataTable ds = new DataTable();
adapter.Fill(ds);
this.Dispatcher.Invoce((Action)(() =>
{
Data.ItemsSource = ds.DefaultView;
Results.SelectedItem = Results.Items.GetItemAt(0);
Errors.Text = "Query Ran Successfully!!! \n" + "Total Rows: " + ds.Rows.Count;
}));
conn.Dispose();
conn.Close();
}
我的问题是……如果我有一个查询 1,000,000 行,并且我想每 10,000 行推送一次收集的数据,我该怎么做?简而言之,如何在查询仍在运行时将结果绑定到数据网格?
如果您有 sql-server 的解决方案,我认为它也适用于 DB2Connection...
【问题讨论】: