2012-09-17 21 views
1

我想將使用c#,WPF的應用程序中動態創建的大型數據表(具有超過1000行的列)複製到MySQL表中。 我已經搜索了各種方法來做到這一點,但沒有成功實施。我認爲MySqlDataAdapter類是我應該使用的,但我不能讓它工作。這就是我試圖做...這種轉移的如何將大數據表複製到MySql表?

 MySqlConnection con = new MySqlConnection(MyConString); 
     MySqlCommand comm = new MySqlCommand("Select * From kinectdata", con); 
     MySqlDataAdapter test1 = new MySqlDataAdapter(comm); 
     test1.Update(skelData); 

速度也很重要,所以我不者優先調用一個INSERT或UPDATE語句1000次。

非常感謝您的反饋! M

回答

5

您可以構建插入所有1000行的單個INSERT語句。

INSERT INTO table VALUES (1,2,3), (4,5,6), (7,8,9); 
+0

太好了,謝謝!我試過數據適配器和命令生成器,但直線上的一行命令要快得多。 –

+0

@Keith是這個插入語句的大小有限嗎?我無法想象你能夠以這種方式插入GB數據 – fubo

+0

@fubo:是的,可能存在SQL字節限制。無論如何,你可能不希望全部使用DB內存來保存一條語句。將你的數據分成合理的插入大小(<64KB?)的組,你會沒事的。 –

3

1000行沒有那麼多,在數據庫方面它沒有什麼,使用插入應該是非常快的。不超過2秒。

在您的示例中,您必須聲明命令類型並設置查詢和命令文本。