2013-10-01 276 views
9

我看到很多關於'Select'的爭論被稱爲DML。有人可以解釋爲什麼它的DML不能處理架構上的任何數據嗎?由於它的鎖定表應該是DML嗎?爲什麼'Select'被稱爲DML語句?

* 在維基百科*我可以看到

「純粹的只讀SELECT查詢語句被歸類與 「SQL數據的陳述[2],因此利用該標準考慮因爲它操縱(即修改)數據,所以SELECT ... INTO形式被認爲是DML 。但是,在通常的實踐中,這種區別並沒有做出,SELECT被廣泛認爲是 是DML的一部分[3]「

但在SELECT * FROM INSERT選擇只會執行選擇以外的任何東西!請有人幫助我理解這個概念。

感謝

+0

你在維基百科摘錄中不理解什麼? –

+0

「只會執行選擇,除此之外沒有其他任何東西」 - 您不認爲它創建了一個表並將該表中的數據插入到「其他」而不僅僅是選擇中? –

+0

@ X.L您是否考慮選擇DML?如果是這樣,請解釋一下數據處理的內容? – saTech

回答

6

,人們通常提出的是DDL(數據定義語言,即管理模式對象)和DML(數據操縱語言,即管理由DDL創建的架構內的數據)之間的區別。顯然,SELECT不是DDL。

+0

只是開玩笑,因爲選擇不是DDL爲什麼我們應該把它包括爲DML?應該將DML理解爲數據管理語言? – saTech

+1

那麼,你可以做一些分組和聚合,並且用一種以某種方式處理數據的SELECT連接,至少在它是如何呈現的。我的主要區別是:DDL創建模式。 DML使用模式。 – Thilo

+0

我活着我在這裏做健康的討論。如果我沒有錯誤的分組和聚合將不會操縱數據!我同意DML使用sheme,DDL創建,使用(改變)模式。如果語言使用scehma,我們可以將它分組爲DMl? – saTech

1

數據操作語言(DML)是用於查詢/檢索和處理數據的詞彙表。不要靠操縱這個詞,這樣的語句允許數據訪問和處理。正如你所標記的問題與SQL Server 2005以下鏈接可以被稱爲:

http://technet.microsoft.com/en-US/library/ms177591(v=SQL.90).aspx

+0

http://en.wikipedia.org/wiki/Data_Manipulation_Language它說:「純粹只讀的SELECT查詢語句被分類爲'SQL-數據'語句[2],因此標準認爲是在DML之外。SELECT ... INTO形式被認爲是DML,因爲它操縱(即修改)數據。但是,在通常的實踐中,這種區分並不是被做出來的,SELECT被廣泛認爲是DML的一部分。[3]「 – saTech

0

爲什麼Select是SQL中的DML語句?

Click here for Link

的SELECT ... INTO形式是操縱或修改數據。

對於如

SELECT列1,列2 INTO destinationTable會
FROM
sourceTable會

複製Coumn1,列2從sourceTable會到destinationTable會。

因此,選擇是dml語句

+0

Is SELECT Column1,Column2 INTO DestinationTable FROM SourceTable),這可能在Oracle中。 –