0
讓我們考慮下列插入:如何在SQL Server內部插入選擇工作?
INSERT INTO SOMETABLE
SELECT * FROM SOMETABLE
WHERE Column > NUMBER
是否有結果集SELECT
語句是可以改變的,由於插入的危險嗎? 換句話說,SELECT
語句可以通過查詢引擎計算多少次以執行INSERT INTO SELECT
到同一個表中?
假設:沒有併發事務的單線程場景。
否。插入操作是單個ACIDic操作。如果不存在,數據庫的整個概念將會出現大問題。 https://en.wikipedia.org/wiki/ACID –
我認爲相同,但當我看到單行重複多次而不是一次時,我感到很驚訝。也許我有幻覺,我會再次檢查。 – tgrabus
@grabus:你在使用連接嗎?將'INSERT'行註釋掉並運行'SELECT'部分來解決這樣的查詢是很方便的。這樣,您可以驗證您的'SELECT'語句是否拉入您期望的數據。我懷疑你有一個配置錯誤的連接或一些不好的數據。如果您希望插入唯一的記錄,「DISTINCT」可以幫助解決這個問題。 – Ellesedil