Diferença entre PL-SQL e T-SQL

PL-SQL vs T-SQL

T-SQL (Transact SQL) é uma extensão do SQL desenvolvida pela Microsoft. 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 embutida 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. O PL / SQL fornece suporte para variáveis, loops (loops WHILE, loops FOR e loops Cursor FOR), instruções condicionais, exceções e matrizes. Um programa PL / SQL contém instruções SQL. Essas instruções SQL incluem SELECT, INSERT, UPDATE, DELETE etc. Instruções SQL como CREATE, DROP ou ALTER não são permitidas em programas PL / SQL. As funções PL / SQL podem conter instruções PL / SQL e SQL e retornam um valor. Os procedimentos PL / SQL, por outro lado, não podem conter instruções SQL e não retornam um valor. O PL / SQL também suporta alguns conceitos de programação orientada a objetos, como encapsulamento, sobrecarga de funções e ocultação de informações. Mas não suporta herança. No 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 aprimorado, pois o servidor Oracle pré-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 procedural, variáveis ​​locais e funções de suporte para processamento de string / dados. Esses recursos tornam o T-SQL Turing completo. Qualquer aplicativo, que precise se comunicar com o Microsoft SQL Server, precisa enviar uma instruçã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 inserir várias 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 de 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 do SQL fornecida pela Oracle e é usada com o servidor de banco de dados Oracle, enquanto 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 chamados 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 no PL / SQL, a instrução CASE deve ser usada no T-SQL. Além disso, em vez da instrução SELECT INTO no T-SQL, a instrução INSERT INTO deve ser usada no PL / SQL. No PL / SQL, há um operador MENOS, que pode ser usado com instruções SELECT. No T-SQL, os mesmos resultados podem ser obtidos usando a cláusula NOT EXISTS com as instruções SELECT.