0
我正在開發用C#和SQLite的應用選擇。我的問題是,我需要同時執行INSERT查詢和SELECT查詢。如果我更詳細地解釋我的問題;C#SQLite的插入,並在同一時間
比方說,我的數據庫名字爲MYDB,
我導入一個1 MB的文本文件MYDB。雖然這種進口是加工,是另一個窗口(在同一個應用程序,並使用相同的連接和同一個數據庫文件),可以執行SELECT查詢?
謝謝你的幫忙!
我正在開發用C#和SQLite的應用選擇。我的問題是,我需要同時執行INSERT查詢和SELECT查詢。如果我更詳細地解釋我的問題;C#SQLite的插入,並在同一時間
比方說,我的數據庫名字爲MYDB,
我導入一個1 MB的文本文件MYDB。雖然這種進口是加工,是另一個窗口(在同一個應用程序,並使用相同的連接和同一個數據庫文件),可以執行SELECT查詢?
謝謝你的幫忙!
好,爲什麼你需要選擇?你會得到一些插入並放在另一個表中?或者程序需要保持運行,就像沒有任何運行?
如果您需要選擇把在另一個表,你可以使用它: SELECT * FROM鱈遞減限制1表的順序;
,或者,如果你需要保持運行,您將需要一個線程,它的一個例子:
onLoad()
{
Thread t = new Thread(new ThreadStart(t_trigger));
t.Start();
}
private void t_trigger()
{
table_insert(string d)
}
private delegate void delegate_table_insert(string d);
private void table_insert(string d)
{
if (InvokeRequired)
{
try
{
Invoke(new delegate_table_insert(table_insert), d);
}
catch (Exception ex)
{
//MessageBox.Show(ex.Message);
}
}
else
{
try
{
// here run the code
}
catch (Exception ex)
{
//MessageBox.Show(ex.Message);
}
}
儘管有可能,你最好整理方式不同。一個廉價的解決方案。將填充數據庫和(從該數據庫,你做一次,當你打開窗口SELECT)與INSERT'ed行(將其插入到數據庫中,並進入「另一個窗口」的視圖)視圖。其他解決方案是顯示進度應用寬(每次操作後更新)和更新「另一個窗口」較不頻繁地(至例如,一旦在幾秒鐘)。這是假設沒有其他用戶正在使用數據庫。否則......繼續思考= D – Sinatr