我的任務是將列添加到特定位置的表中。SQL Server在刪除/創建表序列期間插入
CREATE TABLE dbo.[Tmp_SomeTableName]
(
some schema
)
INSERT INTO dbo.[Tmp_SomeTableName]
(
SELECT [New column order here] from dbo.[SomeTableName]
)
DROP TABLE dbo.[SomeTableName]
EXECUTE sp_rename N'dbo.[Tmp_SomeTableName]', N'SomeTableName','OBJECT'
我的問題很簡單,什麼都會做MSSQL與
INSERT INTO dbo.[SomeTableName]
而表重建正在進行中?它會插入並在重建結束時發送它們嗎?或者我應該期待sql異常(並且未能插入數據)?
注意:平均而言,有問題的表格每分鐘可看到約20個插入點的流量。沒有更新查詢在表上運行,並且< 5選擇查詢每小時
如果這是用於家庭作業或研發的罰款,但如果這是針對任何您打算使用請停止並重新評估您解決此問題的方式。動態添加列到Sql Server數據庫在如此多的級別上是錯誤的,並且此功能的有效用例很少。考慮添加一個新表,並將該鍵存儲在列中的一個值和一個值中,以便您可以簡單地向該表中添加另一行,而不是即時修改表。 –
列順序只是一個視覺事物。爲什麼你需要重新排列列?沒有合理的理由,除非你使用'SELECT *'並以列順序爲依據,否則你需要對列進行重新排序 - 這是非常糟糕的事情。 –