有沒有人知道或有一個從1表到另一個獲取數據的例子?ADO.NET:從一個表中獲取數據到另一個?
它使用SQL SERVER EXPRESS,2個表幾乎相同,1個被用作客戶端的臨時表..所以我的後端客戶端需要將項目從臨時表移動到其他表。
我是否需要使用只向前遊標和for循環?
我認爲我打開一個連接,使用命令對象來查詢數據庫,將回到DataSet
?
我遍歷for循環和使用的ADO.NET
的COMMAND
對象調用插入記錄是不是有這樣做的更好的辦法?
有沒有人知道或有一個從1表到另一個獲取數據的例子?ADO.NET:從一個表中獲取數據到另一個?
它使用SQL SERVER EXPRESS,2個表幾乎相同,1個被用作客戶端的臨時表..所以我的後端客戶端需要將項目從臨時表移動到其他表。
我是否需要使用只向前遊標和for循環?
我認爲我打開一個連接,使用命令對象來查詢數據庫,將回到DataSet
?
我遍歷for循環和使用的ADO.NET
的COMMAND
對象調用插入記錄是不是有這樣做的更好的辦法?
您可以在SQL只有這樣做,是這樣的:
SELECT *
INTO theNewTable
FROM FirstTable dept
WHERE 1 = 1;
放入strored過程或直接執行它的命令。
請注意:INTO
將創建一個與第一個表具有相同結構的新表,並將第一個表中的所有行復制到該表中。如果你只想創建表而不填充行並將它們複製到新創建的表中,那麼我們就會出現一個總是謬誤的表達式。例如「1 = 0」。
您可以使用DataTable.Copy
http://msdn.microsoft.com/fr-fr/library/system.data.datatable.copy.aspx
您還可以使用DataTable.ImportRow
鏈接:http://msdn.microsoft.com/fr-fr/library/system.data.datatable.importrow.aspx
TSQL:您還可以使用:在存儲過程INSERT SELECT
查詢。
不錯,但我的表是不完全一樣的,目的地將有更多的領域,我必須更新manaully。 – Martin
@Martin當你使用DataTable.Copy時,你複製到本地表中,例如:var table = yourDataTable.Copy();所以你cpy的結構和數據。您也可以嘗試使用克隆和導入行。你也可以執行存儲過程,並調整你的查詢 –
如果兩個表的列是相同的:
INSERT INTO TABLE_1
SELECT * FROM TABLE_2
如果不是所有的列都是一樣的,你可以做這樣的:
INSERT INTO TABLE_1 (common_column1, common_column2, common_column3)
SELECT common_column1, common_column2, common_column3 FROM TABLE_2
之後,你可以更新不相等的列。 也可以插入在列硬編碼的值不相等:
INSERT INTO TABLE_1 (common_column1, common_column2, common_column3, diff_column_1, diff_column_2)
SELECT common_column1, common_column2, common_column3, '1', '2' FROM TABLE_2
不,他們不完全一樣,有些是但目的地表有更多的領域,我將需要更新 – Martin
我編輯了我的答案。 – gabsferreira
您可以使用此
INSERT INTO TABLE (columnname1, columnname2, columnname3,.....)
SELECT columnname1, columnname2, columnname3 FROM TBL
看看這個帖子中插入數據:http://stackoverflow.com/q/3598699/1668398 –
which db ????????? – nawfal
quesiton更新與數據庫類型等 – Martin