有誰知道如何將數據插入到表中的約1000增量?我有一張包含數千條記錄的表,我想將其插入到不同服務器上的相同表中。插入數據
插入數據
回答
你需要尋找到sqlbulkcopy.batchsize屬性
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopy.batchsize.aspx
SELECT ... LIMIT n個偏置米;是以小塊抽取大量數據的標準方式。但是閱讀你的問題,似乎你正試圖在兩臺數據庫服務器之間複製數據。也許你應該檢查數據庫引擎是否具有複製支持。
根據不同的版本,你可以使用SSIS(2005/2008)或DTS(2000/7),或者如果您熟悉命令行,然後BCP或者如果你是管理員,這是一個一次性拍攝並根據再版本,企業經理具有查詢界面,必將讓你寫SQL(INSERT INTO ...)或SELECT * FROM ...但不知道該版本或目的其難度具體..
SSIS和最批量複製工具(包括BCP)將在模式,允許成批插入運行。鑑於您正在將其移動到另一臺服務器,您可能想要使用批量加載工具來完成此操作。
你想從一個表移動到另一個數據?嘗試BCP實用程序。
http://msdn.microsoft.com/en-us/library/aa174646(SQL.80).aspx
它對大量數據很有效。
如果表中有一個主鍵
Declare @Start Integer Set @Start = 1
Decalre @End Integer Set @End = 1000
Declare @PKs table
(rowNo Integer identity Primary Key Not Null,
PK Integer Not Null)
Insert @Pks(PK)
Select PrimaryKeyColumn
Form SourceTable
Where [Criteria to select rows you want]
While Exists(Select * From @PKs)
Begin
Begin Transaction
Insert DestTable([ColumnList])
Select [ColumnList]
From SourceTable S
Join @Pks p
On p.PK = s.PrimaryKeyColumn
Where p.rowNo Between @Start and @End
Commit Transaction
-- ----------------------------------
Delete @PKs where rowNo Between @Start and @End
Set @Start = @End + 1
Set @End = @Start + 999
End
oooooh ..我喜歡! – Taptronic 2009-09-17 13:26:43
我問過類似的問題,導入/導出嚮導建議工作的很好我。從一臺機器上的一個數據庫向另一臺機器上的另一臺數據庫插入數千條記錄非常快(幾秒鐘)。
- 1. 插入數據
- 2. 插入數據
- 3. 插入數據
- 4. 插入數據
- 5. 插入數據
- 6. 插入數據
- 7. 插入數據表
- 8. 插入數據庫
- 9. mysqli_query插入數據
- 10. 元數據插入
- 11. 大數據插入
- 12. 插入數據3.4
- 13. 插入mysql數據
- 14. MYSQL插入數據
- 15. 數據庫插入
- 16. 插入數據庫
- 17. UITableView數據插入
- 18. Yii插入數據
- 19. PDO插入查詢不插入數據
- 20. 批量插入不插入數據
- 21. Firebase數據插入問題。數據未正確插入
- 22. 插入查詢不會插入數據到mysql數據庫表
- 23. 插入數據庫後立即返回插入的數據數據
- 24. C#插入數據庫,沒有錯誤和數據沒有插入數據庫
- 25. 插入動態數據從數據列表導入數據庫
- 26. 向數據庫中插入空數據
- 27. 從datagridview插入數據到數據庫
- 28. 無法將數據插入數據庫
- 29. 數據插入問題到數據庫
- 30. 將數據插入到cPanel數據庫
它在SQL Server中工作嗎? – 2009-09-15 14:08:04
它確實,但是這個表不會被複制。它位於開發服務器上。 – Eric 2009-09-15 14:33:55