Domanda

Capisco che DML comprende tecnicamente verbi SQL che si limitano a query, ma non modificano i dati persistenti. (Si veda, ad esempio, wikipedia o oracle o orafaq )

Tuttavia, ho spesso desidero fare riferimento a "tutti e solo quei verbi SQL che modificano memorizzati / dati persistenti" - fondamentalmente INSERT, UPDATE, DELETE ma non un SELECT pianura. C'è un / standardizzato termine ufficiale, o, forse, a parte, un termine cogente ed elegante, per questo sottogruppo di DML?

È stato utile?

Soluzione

Non credo che ci sia una, purtroppo, da un punto di vista ufficiale. Forse abbiamo bisogno di fare uno?

Personalmente, penso che il termine DML è fuorviante perché il termine in realtà non descrivere il modo in opere SELECT come (di solito) in realtà non Modifica nulla. E 'solo "raccoglie" i dati relazionali in modo diverso in spazio temporaneo e restituisce un set specificato di esso.

Quindi, se è stata una mia scelta, direi che:

DML descriverebbero INSERT / UPDATE / DELETE

e

DRL ( lingua di reperimento dei dati ) descriverebbero selezionare .

Altri suggerimenti

DML include SELECT INTO (piuttosto che semplicemente SELECT) perché è un sinonimo per gli inserti. Non c'è alcun bisogno di subcategorize.

Dopo averci pensato sulla strada nel mondo del lavoro, mi sono ricordato che seleziona è utilizzato per la manipolazione dei dati. Ad esempio:

SELECT t.firstname +' '+ t.lastname --String concatenation
SELECT CAST(t.column AS int) --Datatype change

Il mio professore usati per definirli come modifiche (al contrario di Legge), ma non so di un termine standard per IUD.

sulla base CRUD: Tavola CRUD , poteva solo dire CUD (creare, aggiornamento, cancellazione). tuttavia, non sono sicuro se qualcuno lo utilizza.

Secondo il articolo di Wikipedia su SQL ,

  

Il Data Manipulation Language (DML)   è il sottoinsieme di SQL utilizzato per aggiungere,   aggiornare e cancellare i dati:

discussi ci (INSERT, UPDATE, DELETE, MERGE, TRUNCATE , ecc) sono collocati in un diversa categoria di SELECT.

Quindi, secondo Wikipedia, DML non può includere necessariamente SELECT.


Secondo il SQL-92 standard di , guardando il tavolo-of-contenuti rivela che DML include SELECT INTO:

     13 Data manipulation ............................................371

     (...)

     13.5 <select statement: single row> .............................382

     (...)

La definizione elencato lì descrive SELECT <columns> INTO ....

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top