Diferença entre PL-SQL e T-SQL

Anonim

PL-SQL vs T-SQL

T-SQL (Transact SQL) é uma extensão do SQL desenvolvida pela Microsoft. O T-SQL é Usado no Microsoft SQL Server. PL / SQL (linguagem processual / linguagem de consulta estruturada) também é uma extensão processual para SQL desenvolvida pela Oracle. PL / SQL é uma linguagem de programação principal incorporada no banco de dados Oracle.

PL / SQL PL / SQL é uma extensão processual para SQL desenvolvida pela Oracle. Os programas PL / SQL são constituídos por blocos, que é a unidade básica do PL / SQL. PL / SQL oferece suporte para variáveis, loops (WHILE loops, FOR loops, e Cursor FOR), declarações condicionais, exceções e arrays. Um programa PL / SQL contém instruções SQL. Essas instruções SQL incluem SELECT, INSERT, UPDATE, DELETE, etc. As instruções SQL como CREATE, DROP ou ALTER não são permitidas em PL / Programas SQL. As funções PL / SQL podem conter instruções PL / SQL e instruções SQL e retorna um valor. Os procedimentos PL / SQL, por outro lado, não podem conter instruções SQL e d não devolve um valor. O PL / SQL também suporta alguns conceitos de programação orientados a objetos, como encapsulamento, sobrecarga de funções e ocultação de informações. Mas não é compatível com a herança. Em PL / SQL, os pacotes podem ser usados ​​para agrupar funções, procedimentos, variáveis, etc. Os pacotes permitem a reutilização de código. O uso do código PL / SQL no servidor Oracle levaria a um desempenho melhorado, já que o servidor Oracle compila o código PL / SQL antes de executá-lo.

T-SQL

T-SQL é uma extensão do SQL desenvolvida pela Microsoft. O T-SQL estende o SQL adicionando vários recursos, como programação processual, variáveis ​​locais e funções de suporte para processamento de string / data. Esses recursos tornam T-SQL Turing completo. Qualquer aplicativo, que precisa se comunicar com o servidor Microsoft SQL, precisa enviar uma declaração T-SQL para o Microsoft SQL Server. O T-SQL fornece recursos de controle de fluxo usando as seguintes palavras-chave: BEGIN e END, BREAK, CONTINUE, GOTO, IF e ELSE, RETURN, WAITFOR e WHILE. Além disso, o T-SQL permite que uma cláusula FROM seja adicionada às instruções DELETE e UPDATE. Esta cláusula FROM permitiria inserir junções nas instruções DELETE e UPDATE. O T-SQL também permite a inserção de múltiplas linhas em uma tabela usando a instrução BULK INSERT. Isso inseriria várias linhas em uma tabela lendo um arquivo externo contendo dados. O uso do BULK INSERT melhora o desempenho do que o uso de instruções INSERT separadas para cada linha que precisa ser inserida.

Qual a diferença entre PL / SQL e T-SQL?

PL / SQL é uma extensão processual para o SQL fornecido pela Oracle e é usado com o servidor de banco de dados Oracle, enquanto o T-SQL é uma extensão do SQL desenvolvida pela Microsoft e é usada principalmente com o Microsoft SQL Server.Existem algumas diferenças entre os tipos de dados em PL / SQL e T-SQL. Por exemplo, o T-SQL possui dois tipos de dados denominados DATETIME e SMALL-DATETIME, enquanto o PL / SQL possui um único tipo de dados chamado DATE. Além disso, para obter a funcionalidade da função DECODE em PL / SQL, a instrução CASE deve ser usada no T-SQL. Além disso, em vez da declaração SELECT INTO no T-SQL, a instrução INSERT INTO deve ser usada em PL / SQL. Em PL / SQL, há um operador MINUS, que pode ser usado com instruções SELECT. Em T-SQL, os mesmos resultados podem ser obtidos usando a cláusula NOT EXISTS com as instruções SELECT.