Pregunta

Yo entiendo que abarca LMD técnicamente verbos SQL que se limita a consulta, pero no modifican los datos persistentes. (Véase, por ejemplo, Wikipedia o Oracle o orafaq )

Sin embargo, a menudo me gustaría hacer referencia a "todos y sólo aquellos verbos SQL que modifican almacenados / datos persistentes" - básicamente INSERT, UPDATE, DELETE pero no a SELECT llanura. ¿Hay un / estandarizada término oficial, o, tal vez por separado, un término convincente y elegante, para este subconjunto de LMD?

¿Fue útil?

Solución

No creo que la hay, lamentablemente, desde el punto de vista oficial. Tal vez tenemos que inventar uno?

En lo personal, creo que el término LMD es engañoso porque el término no describe realmente las obras de manera SELECT, ya que (por lo general) no tiene realmente Modificar nada. Sólo se "recoge" los datos relacionales de una manera diferente en el espacio temporal y devuelve un conjunto específico de la misma.

Así que, si era mi elección, yo diría que:

LMD describiría INSERT / UPDATE / DELETE

y

DRL ( Idioma de recuperación de datos ) describiría SELECT .

Otros consejos

DML incluye SELECT INTO (en lugar de sólo SELECT) porque es un sinónimo para las inserciones. No hay necesidad de subcategorizar.

Después de pensarlo en el camino al trabajo, recordé que selecciona es se utiliza para la manipulación de datos. Por ejemplo:

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

Mi profesor utiliza para definirlos como ediciones (a diferencia de lecturas), pero no sé de un término estándar para los DIU.

basado en CRUD: crud , podría simplemente decir CUD (crear, actualizar, eliminar). Sin embargo, no estoy seguro de si alguien utiliza esa.

De acuerdo con la artículo de Wikipedia sobre SQL ,

  

El lenguaje de manipulación de datos (DML)   es el subconjunto de SQL utiliza para agregar,   actualizar y borrar datos:

y los href="http://en.wikipedia.org/wiki/SQL#Data_manipulation" discutidos allí (INSERT, UPDATE, DELETE, MERGE, TRUNCATE , etc) se colocan en un diferente categoría de SELECT.

Por lo tanto, según la Wikipedia, DML no necesariamente incluir SELECT.


De acuerdo con la SQL-92 estándar, echando un vistazo a los contenidos tabla-de-revela que DML Qué incluye SELECT INTO:

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

     (...)

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

     (...)

La definición aparece no describe SELECT <columns> INTO ....

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top