Qual a diferença entre Linguagem SQL, SQL Server e MySQL

Qual a diferença entre Linguagem SQL, SQL Server e MySQL? Neste post mostrarei as diferenças existentes entre as diversas tecnologias que usam o termo SQL. Dica de como usar o comando select em no banco Mysql e SQL Server.

Home » Tecnologia

Sempre que inicio as aulas de banco de dados em uma nova turma é comum encontrar alunos com dificuldade de entender a diferença entre linguagem SQL e os vários bancos de dados que usam o termo SQL, como o SQL Server, MySQL, PostgreeSQL, entre outros. Mas então qual a qual a diferença entre Linguagem SQL, SQL Server e MySQL?

Linguagem SQL

SQL ou Structure Query Language, é uma linguagem computacional destinada a aplicações de banco de dados, mas, SQL não é o banco de dados em si. Ela foi padronizada pela ANSI (American National Standards Institute - Instituto Nacional de Padronização Americano) para a operação em bancos de dados relacionais.

Os bancos de dados relacionais como Oracle, SQL Server, MySQL, DB2, PostgreeSQL, entre outros, usam a SQL como forma de promover o acesso às informações do banco e o relacionamento entre suas tabelas.

Os principais comandos da Linguagem SQL São: Create, alter, drop, insert into, update, delete e select. Os três primeiros fazem parte da chamada DDL (usado para definir as estruturas dos objetos de dados) e os demais fazem parte do DML (usado para manipular os dados nos objetos do banco).

SQL Server

O SQL Server é um banco de dados, isto é, um software para gerenciamento de dados, conhecido pela sigla SGBD. O SQL Server é também um banco de dados relacional e usa a Linguagem SQL para definição, acesso e manipulação de dados.

O SQL Server é da Microsoft e um dos principais banco de dados do mercado e tem presença forte nas médias e grandes empresas, especialmente naquelas que fazem o uso de tecnologias das Microsoft.

O banco é bastante robusto e considerado muito seguro, o que agrada a administradores de banco de dados e profissionais ligados a segurança da informação.

Para as pequenas empresas, o grande entrave do uso do SQL Server é o custo que é considerado alto, visto existir bancos gratuitos para atender a demandas menores, com é o caso do MySQL, que veremos a seguir.

MySQL

Assim como o SQL Server, o MySQL também é um sistema para gerenciamento de banco de dados (SGDB), diferenciando que este é um software livre, enquanto que aquele é um software proprietário. O MySQL também usa a linguagem SQL.

O MySQL ficou muito famoso, principalmente por seu “casamento com o PHP”, isto é, a combinação de uso de PHP e MySQL foi e ainda continua sendo muito forte no ambiente da internet e isto fortaleceu a ambos. Boa parte dos pequenos e médios sites usam esta combinação, como é o caso do WordPress, uma ferramenta criada inicialmente para fazer blogs e que hoje é usada por quase um terço dos sites na internet e atende a vários segmentos.

O MySQL que foi criado com um software livre acabou sendo vendido para uma empresa proprietária e hoje é de propriedade da Oracle, dona do maior sistema de banco de dados que leva o mesmo nome.

Há incertezas quanto a continuidade dele como ferramenta gratuita e livre, uma vez que ele está nas mãos de uma empresa que historicamente é conhecida por seu banco proprietário e pago.

Depois que o MySQL foi vendido para a Oracle, o próprio criador do MySQL, baseou-se em seu antigo software para criar o MariaDB, mantendo a mesma filosofia de software livre e conta com a participação de uma enorme comunidade de desenvolvedores ao redor do mundo que colabora no aprimoramento deste software.

Qual a diferença entre Linguagem SQL, SQL Server e MySQL?

Resumindo: Linguagem SQL é uma linguagem usada nos bancos de dados relacionais, enquanto que SQL Server e MySQL são sistemas para gerenciamento de banco de dados e que fazem o uso da linguagem SQL e por isso levam o nome SQL.

Veja abaixo alguns exemplos de comandos SQL que funcionam tanto no SQL Server, com no MySQL:

Exemplo para inserir dados:

INSERT INTO cidades(codigo, nome, populacao, estado) VALUES(20, ‘Campos do Jordão’,65000,’SP’);

Exemplo para alterar dados:

UPDATE cidades set nome=’Poços de Caldas’, populacao=120000, estado=’MG’

WHERE CODIGO=20;

Exemplo para excluir dados:

DELE FROM cidades

WHERE CODIGO=20;

Exemplo do comando Select

O comando Select do SQL é usado para efetuar consultas no banco de dados. Neste post veremos como usar este comando nos bancos de dados Mysql, SQL Server, dentre outros. Estes bancos por sua vez apresentam algumas diferenças na maneira de entender o Select. Vamos lá?

Estrutura do comando Select:

  • SELECT - Seleciona as colunas da consulta
  • FROM - Seleciona a(s) tabela(s)
  • WHERE - Permite criar condições para filtrar os dados retornados na consulta
  • GROUP BY Agrupa dados na consulta.
  • HAVING Limita o resulta em uma condição estabelecida.
  • ORDER BY Especifica a coluna ou as colunas que serão ordenadas na consulta

Usando o Select na forma básica

Select * FROM empregados

No exemplo acima, usamos as cláusulas Select e From. O * (asterisco) indica que todas as colunas da tabela devem ser retornadas.

Em muitos casos é recomendável selecionar algumas colunas apenas e não todas como no exemplo acima, isto deve ser considerado pois quando o tamanho do banco aumentar as consultas poderão ficar lentas em função do grande volume de informações contida nas tabelas.

Selecionando colunas específicas para a consulta

SELECT nome,salario, cidade

FROM empregados

Para retornar apenas as colunas desejadas, basta indicar os seus nomes na instrução select como no exemplo a seguir, onde selecionamos o nome, salário e cidade.

Renomeando colunas

SELECT nome, data_nascimento As Aniversario, cidade As residencia

FROM empregados

É importante observar que a coluna foi renomeada apenas nesta consulta, mas não houve alteração no nome da coluna no banco de dados.

Concatenando colunas em uma consulta

Concatenamos colunas quando queremos unir o resultado de dois campos em um só. Imagine que numa determinada tabela exista o campo nome, sobrenome, rua e numero da casa, neste caso ao fazermos uma consulta seria interessante concatenat o nome com o sobrenome e a rua com o numero da casa.

O Mysql trata concatenação de forma diferente do SQL Server e do Access, enquanto que no Mysql usamos a função concat(), no SQL Server e no Access fazemos pelo sinal de adição.

Exemplo de concatenação no Mysql:

SELECT concat(nome, *** mora em ***, cidade, ***/***, estado

FROM empregados

Exemplo de concatenação em SQL Server ou Access

SELECT nome + *** mora em *** + cidade + ***/*** + estado

FROM empregados

O sinal + (mais) indica concatenação e deve ser usado para concatenar colunas ou uma coluna com um texto. Só poderá ser concatenado colunas do tipo texto, caso for necessário concatenar colunas do tipo data ou numérico, é necessário fazer a conversão dessas colunas para texto.

A função CONVERT() do SQL Server é usada para fazer a conversão de valores de uma coluna.

Exemplo 1:

SELECT nome + *** ganha *** + convert(varchar, salario)

FROM empregados

Exemplo 2:

SELECT nome + *** nasceu em *** + Convert(VarChar, data_nascimento, 103)

FROM empregados

No primeiro caso, estamos convertendo o valor da coluna salário para texto, já que esta coluna é do tipo Decimal.

No segundo exemplo, estamos convertendo o valor de uma coluna do tipo data para texto. Perceba que neste caso usamos o 103 na função, isto é necessário para informarmos que queremos que a data seja convertida no formato dd/mm/aaaa.

Selecionando valores distintos

Para eliminar linhas duplicadas, usamos a palavra-chave DISTINCT na cláusula SELECT.

SELECT distinct cidade

FROM empregados

No exemplo acima, usamos a palavra-chave distinct na coluna cidade, mas é possível relacionar mais de uma coluna, por exemplo, cidade e estado. Neste caso a combinação das duas colunas deve ser distinta.

Limitando o nº de linhas em uma consulta

Limitar o número de linhas é usado quando não queremos listar todas as linhas de uma tabela, seja pelo volume de linhas ou por não haver necessidade. O Mysql trata esta questão de forma diferente do SQL Server e do Access.

Em SQL Server e Access use o Top para indicar o limite de linhas desejado na consulta.

SELECT top 7 *

FROM empregados

Em Mysql use o Limit para indicar o limite de linhas desejado na consulta.

SELECT *

FROM empregados limit 0,7

O resultado será o mesmo, porém a leitura pode ser um pouco diferente, já que o top vai pegar as sete primeiras linhas e o limit vai pegar a partir de 0 até 7.


VEJA TAMBÉM:

CANAL NO YOUTUBE

INSCREVA-SE:



Sistemas Web

Playlist de SQL

Youtube Youtube Youtube
© 2021 - Utilidade Pública: Tecnologia, Educação e Cidadania.