A colher em SQL e PL / SQL

Como um desenvolvedor de aplicativos de banco de dados, você interage com o SGBD Oracle usando as linguagens de programação Structured Query Language (SQL, pronunciado continuação

) E Linguagem de Programação / Structured Query Language (PL / SQL, pronunciado ou P-L-S-Q-L ou P-L-continuação).

O objetivo do SQL e PL / SQL

SQL é a linguagem padrão da indústria para a manipulação de DBMS objetos. Usando o SQL, você pode criar, modificar ou excluir objetos de banco de dados. Esta parte do SQL é chamado de Data Definition Language (DDL). Você também pode usar SQL para inserir, atualizar, excluir ou consultar dados nesses objetos. Esta parte do SQL é chamado de Data Manipulation Language (DML).

implementação de SQL da Oracle não é exatamente padrão da indústria. Praticamente todos os DBMS (Oracle incluído) inventou itens que não fazem parte da especificação padrão. Por exemplo, Oracle inclui sequências e suporte para consultas recursivas que não são suportados em outros produtos de DBMS.

Conhecer o SQL em um ambiente Oracle permite que você trabalhe em praticamente qualquer ambiente DBMS, como SQLServer ou MySQL, mas você vai encontrar algumas diferenças nos ambientes DBMS. Você provavelmente deve saber SQL antes de tentar usar PL / SQL.

PL / SQL é exclusivo para Oracle. Não é padrão da indústria. Nenhum outro produto utiliza. Ser capaz de usar PL / SQL irá ajudá-lo a trabalhar apenas dentro do ambiente de banco de dados Oracle, mas se você estiver familiarizado com qualquer outra linguagem de programação, você vai descobrir que PL / SQL segue as mesmas regras básicas.

PL / SQL é semelhante a outras linguagens de programação procedural não orientadas a objetos, como C ou Pascal. Suas raízes intelectuais voltar a uma linguagem de programação chamada Ada.

O que torna PL / SQL único é a sua integração com o SQL. É mais fácil e mais natural para incorporar SQL em PL / SQL do que para fazê-lo em qualquer outra linguagem de programação. Isso faz com PL / SQL ideal para escrever programas grandes e complexos que devem interagir com um banco de dados Oracle.

A diferença entre SQL e PL / SQL

SQL e PL / SQL são completamente diferentes idiomas. SQL é uma linguagem limitada que permite que você interaja diretamente com o banco de dados. Você pode manipular objetos (DDL) e dados (DML) com SQL, mas o SQL não inclui todas as coisas que linguagens de programação normais têm, como loops e se ... então declarações.

Isso é o que PL / SQL é para. PL / SQL é uma linguagem de programação normal que inclui todas as características da maioria das outras linguagens de programação. Mas tem uma coisa que outras linguagens de programação não tem, ou seja, a capacidade de fácil integração com o SQL.

O que há de novo no Oracle SQL e PL / SQL?

Oracle SQL e PL / SQL estão evoluindo línguas que constituem a espinha dorsal de aplicações escritas para o ambiente Oracle. Cada versão do banco de dados Oracle expande as características de línguas. A versão de produção do Oracle 10g Release 2 foi lançado recentemente. Como nas versões anteriores, esta versão oferece muitas coisas novas, incluindo o seguinte:

  • PL / SQL, provavelmente irá correr mais rápido nos 10g versão do que em versões anteriores. Você não precisa fazer nada extra para beneficiar dessa melhoria. Oracle fez o código PL / SQL executado mais rapidamente, sem necessidade de qualquer trabalho adicional por parte do programador.
  • Em SQL, muitos novos comandos permitem-lhe obter informações mais facilmente do que antes.

Porque cada versão traz novos recursos, mantendo-se com as novas funcionalidades do Oracle é importante. Muitos desenvolvedores não manter-se com novos recursos, porque "todas as características antigas ainda funcionará", mas os desenvolvedores perder os grandes novos recursos incluídos em cada versão. Se você fizer uma busca por "novos recursos do PL / SQL" ou "novos recursos do Oracle SQL" no Yahoo! ou o seu motor de busca favorito, você sempre vai encontrar muitos artigos e recursos para mostrar-lhe as mais recentes adições para estas linguagens de programação .

menu