Pergunta

Eu entendo que DML engloba tecnicamente verbos SQL que apenas consulta, mas não modificam dados persistentes. (Ver, por exemplo, wikipedia ou oracle ou orafaq )

No entanto, muitas vezes eu gostaria de referir-se a "todos e apenas os verbos SQL que modificam armazenados / dados persistentes" - basicamente INSERT, UPDATE, DELETE mas não a SELECT simples. Existe uma / termo oficial padronizado, ou, talvez, separadamente, um convincente e prazo graciosa, para este subconjunto de DML?

Foi útil?

Solução

Eu não acho que há um, infelizmente, de uma perspectiva oficial. Talvez tenhamos de fazer um up?

Pessoalmente, acho que o termo DML é enganosa porque o termo realmente não descrever a maneira SELECIONE obras, uma vez que (geralmente) não faz realmente Modificar qualquer coisa. Ele apenas "recolhe" os dados relacionais de uma forma diferente em espaço temporário e retorna um conjunto especificado do mesmo.

Então, se foi a minha escolha, eu diria que:

DML descreveria INSERT / UPDATE / DELETE

e

DRL ( dados linguagem de recuperação ) descreveria SELECT .

Outras dicas

DML inclui SELECT INTO (em oposição a apenas SELECT) porque é uma sinônimo para inserções. Não há nenhuma necessidade de subcategorizar.

Depois de pensar sobre isso no caminho para o trabalho, eu me lembrei que selecione é usado para manipulação de dados. Por exemplo:

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

Meu professor usado para defini-los como edições (em oposição a Lê), mas eu não sei de um termo padrão para DIU.

baseado em CRUD: Criar, ler, atualizar e de exclusão, você poderia apenas dizer CUD (criar, atualizar, excluir). no entanto, eu não tenho certeza se os usos ninguém que.

De acordo com o href="http://en.wikipedia.org/wiki/SQL" rel="nofollow noreferrer"> artigo ,

O Data Manipulation Language (DML) é o subconjunto de SQL usado para adicionar, atualizar e excluir dados:

e os declarações discutido há (INSERT, UPDATE, DELETE, MERGE, TRUNCATE , etc) são colocados em um diferente categoria que SELECT.

Assim, de acordo com a Wikipedia, DML podem não necessariamente incluir SELECT.


De acordo com a SQL-92 padrão , olhando para o conteúdo da tabela de-revela que DML que incluem SELECT INTO:

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

     (...)

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

     (...)

A definição listado lá descreve SELECT <columns> INTO ....

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top