SQL vs PL SQL
SQL (Structured Query Language) é a linguagem padrão para escrever bancos de dados relacionais de entrada. SQL são instruções simples, que permitem recuperar, inserir, excluir, atualizar registros conforme as necessidades do usuário. Simplesmente é uma linguagem orientada a dados para selecionar e manipular conjunto de dados. PL SQL (Linguagem procedural / Linguagem de consulta estruturada) é uma linguagem de extensão processual para entrada e manipulação de dados pelo Oracle.
“PL / SQL, a extensão processual do SQL da Oracle, é uma linguagem de programação avançada de quarta geração (4GL). Oferece recursos modernos, como encapsulamento de dados, sobrecarga, tipos de coleta, tratamento de exceções e ocultação de informações. O PL / SQL também oferece acesso SQL contínuo, forte integração com o servidor e ferramentas Oracle, portabilidade e segurança. ”
SQL
A linguagem de consulta estruturada (SQL) pronunciada como "sequela" é uma linguagem de computador de banco de dados projetada para gerenciar dados em sistemas de gerenciamento de banco de dados relacional (RDBMS) e originalmente baseada em álgebra relacional.
O escopo básico do SQL é inserir dados e executar atualização, exclusão, criação de esquema, modificação de esquema e controle de acesso a dados em bancos de dados.
O SQL possui elementos subdivididos nos seguintes itens:
Consultas - Recupere dados, com base em critérios específicos. Existem poucas palavras-chave que podem ser usadas em consultas. (Selecione, De, Onde, Tendo, Agrupar e ordenar por)
por exemplo: SELECT * FROM table1 WHERE column1> condition ORDER BY column2;
Afirmações - Isso pode controlar transações, fluxo de programas, conexões, sessões ou diagnósticos
Expressões - Isso também pode produzir;
Valores escalares
Tabelas consistindo em colunas e linhas de dados
Predicados -Especifique as condições que podem ser avaliadas como SQL Boolean (verdadeiro / falso / desconhecido)
Cláusulas - Componentes constituintes de declarações e consultas
PL / SQL
PL / SQL (linguagem processual / linguagem de consulta estruturada) é a linguagem de extensão processual da Oracle Corporation para SQL e o banco de dados relacional Oracle. O PL / SQL suporta variáveis, condições, loops, matrizes, exceções. Os contêineres de código PL / SQL essencialmente podem ser atendidos nos bancos de dados oracle. Os desenvolvedores de software podem, portanto, implantar unidades de funcionalidade PL / SQL no banco de dados diretamente.
As unidades de programa PL / SQL podem ser definidas da seguinte maneira:
Blocos anônimos
Forma a base do código PL / SQL mais simples
Funções
Funções são uma coleção de instruções SQL e PL / SQL. As funções executam uma tarefa e devem retornar um valor ao ambiente de chamada.
Procedimentos
Os procedimentos são parecidos com as Funções. Os procedimentos também podem ser executados para executar o trabalho. Os procedimentos não podem ser usados em uma instrução SQL, podem retornar vários valores. Além disso, funções podem ser chamadas do SQL, enquanto procedimentos não podem.
Pacotes
O uso de pacotes é reutilizar o código. Pacotes são grupos de funções, procedimentos, variáveis, tabela PL / SQL vinculadas teoricamente e instruções TYPE de registro, constantes e cursores etc. Os pacotes geralmente têm duas partes, uma especificação e um corpo
Duas vantagens dos pacotes incluem:
Abordagem modular, encapsulamento da lógica de negócios
O uso de variáveis de pacotes pode declarar nos níveis da sessão
Tipos de variáveis em PL / SQL
Variáveis
Variáveis numéricas
Variáveis de caracteres
Variáveis de data
Tipos de dados para colunas específicas
Diferença entre SQL e PL / SQL
SQL é uma linguagem orientada a dados para selecionar e manipular dados, mas PL SQL é uma linguagem processual para criar aplicativos.
O SQL executa uma instrução por vez, enquanto no PL o bloco de código SQL pode ser executado.
SQL é declarativo onde, como PL SQL, é procedural.
SQL é usado para escrever consultas, DML (Data Manipulation Language) e DDL (Data Definition Language), enquanto SQL PL é usado para escrever blocos de programas, gatilhos, funções, procedimentos e pacotes.
Recapitular:
SQL é uma linguagem de consulta estruturada. No SQL, várias consultas são usadas para manipular o banco de dados de maneira simplificada. PL / SQL é uma linguagem procedural que contém vários tipos de variáveis, funções e procedimentos. O SQL permite que o desenvolvedor emita uma consulta única ou execute uma inserção / atualização / exclusão única de cada vez, enquanto o PL / SQL permite que o programa completo de gravação seja executado várias seleções / inserções / atualizações / exclusões por vez. SQL é uma linguagem simples orientada a dados, enquanto a linguagem de programação PL / SQL.