<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Eliel Dias</title>
    <description>The latest articles on DEV Community by Eliel Dias (@eliel-dm).</description>
    <link>https://dev.to/eliel-dm</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4042841%2F32c87e7c-17b3-43a6-a1a0-15883a985bb2.jpg</url>
      <title>DEV Community: Eliel Dias</title>
      <link>https://dev.to/eliel-dm</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/eliel-dm"/>
    <language>en</language>
    <item>
      <title>O que é SQL ?</title>
      <dc:creator>Eliel Dias</dc:creator>
      <pubDate>Fri, 24 Jul 2026 02:30:35 +0000</pubDate>
      <link>https://dev.to/eliel-dm/o-que-e-sql--1573</link>
      <guid>https://dev.to/eliel-dm/o-que-e-sql--1573</guid>
      <description>&lt;h2&gt;
  
  
  Opaaa, seja muito bem-vindo(a)! 👋
&lt;/h2&gt;

&lt;p&gt;Se você gosta ou trabalha com &lt;strong&gt;TI&lt;/strong&gt; (Tecnologia da Informação), independentemente da área, muito provavelmente já ouviu falar sobre a sigla &lt;strong&gt;SQL&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;E talvez, da mesma forma como eu pensava, você pense:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"É uma linguagem dos caras que mexem com banco de dados."&lt;/em&gt; 🤣&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Sim, eu pensava exatamente dessa forma! Até que, durante os meus estudos voltados para &lt;strong&gt;PHP&lt;/strong&gt;, esbarrei na necessidade de entender melhor o que é o SQL.&lt;/p&gt;

&lt;p&gt;Por esse motivo, neste post vou compartilhar o que aprendi. O objetivo é tanto apresentar a minha visão sobre o assunto quanto aplicar a &lt;a href="https://www.youtube.com/watch?v=TVHUs67kwRk&amp;amp;pp=ygUTVMOpY25pY2EgZGUgRmV5bm1hbg%3D%3D" rel="noopener noreferrer"&gt;Técnica de Feynman&lt;/a&gt;, uma excelente estratégia para fixar conteúdos aprendidos, mesmo que pareça óbvio (e talvez seja mesmo).&lt;/p&gt;




&lt;h3&gt;
  
  
  Iniciando pelo conceito teórico 📖
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;SQL&lt;/strong&gt; (&lt;em&gt;Structured Query Language&lt;/em&gt;), traduzido para o português como &lt;strong&gt;Linguagem de Consulta Estruturada&lt;/strong&gt;, é, a grosso modo, a linguagem universal de comunicação para bancos de dados relacionais (&lt;a href="https://youtu.be/3x-XZ2TLZAE" rel="noopener noreferrer"&gt;este conteúdo me ajudou a entender&lt;/a&gt;). 🤓  &lt;/p&gt;

&lt;p&gt;E daí já entra um novo termo: &lt;strong&gt;Bancos de Dados Relacionais&lt;/strong&gt;. Eles são conhecidos como bancos de dados tradicionais, nos quais os dados são organizados em tabelas, colunas e linhas, sendo também possível realizar relacionamentos entre tabelas por meio de chaves (&lt;em&gt;Primary Keys&lt;/em&gt; e &lt;em&gt;Foreign Keys&lt;/em&gt;).&lt;/p&gt;

&lt;p&gt;Com essa linguagem, é possível realizar as operações clássicas de manipulação de dados, conhecidas pela sigla &lt;strong&gt;CRUD&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;C&lt;/strong&gt;REATE (Inserção) – Permite inserir novos registros ou dados no banco (em SQL, realizado pelo comando &lt;code&gt;INSERT&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;R&lt;/strong&gt;EAD (Consulta/Leitura) – Permite ler, buscar e filtrar dados armazenados no banco (realizado pelo comando &lt;code&gt;SELECT&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;U&lt;/strong&gt;PDATE (Atualização) – Permite modificar ou atualizar dados já existentes no banco (realizado pelo comando &lt;code&gt;UPDATE&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;D&lt;/strong&gt;ELETE (Exclusão) – Permite remover registros cadastrados no banco (realizado pelo comando &lt;code&gt;DELETE&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Porém, devido ao SQL ser uma linguagem declarativa, também são utilizados outros comandos e cláusulas para definir o escopo, quantidade, filtro e outras operações com os comandos mostrados acima.  &lt;/p&gt;




&lt;h3&gt;
  
  
  Entendendo algumas queries na prática 🪄
&lt;/h3&gt;

&lt;p&gt;Talvez tenha ficado genérica a afirmação no parágrafo acima. Mas vou tentar mostrar algumas queries e explicar a usabilidade delas na prática em um banco hipotético.&lt;/p&gt;

&lt;p&gt;Epaaa, para tudo — é muito importante de verdade —: ao final de toda expressão SQL, é preciso inserir o &lt;code&gt;;&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="n"&gt;clientes&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;nome&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;email&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;idade&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; 
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'Ana Silva'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'ana.silva@email.com'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;28&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Na primeira linha, teremos o &lt;code&gt;INSERT INTO&lt;/code&gt;, que está dizendo: &lt;em&gt;"Preciso inserir dados dentro de"&lt;/em&gt;.&lt;br&gt;&lt;br&gt;
Seguido pela tabela que receberá os valores, chamada de &lt;code&gt;clientes&lt;/code&gt;.&lt;br&gt;&lt;br&gt;
Dentro dos parênteses teremos &lt;code&gt;(nome, email, idade)&lt;/code&gt;, que é a lista das colunas da tabela que irão receber os dados.&lt;/p&gt;

&lt;p&gt;Na segunda linha, teremos o &lt;code&gt;VALUES&lt;/code&gt;, que indica que os dados reais a serem salvos no banco de dados serão informados logo em seguida.&lt;/p&gt;

&lt;p&gt;Seguido por &lt;code&gt;('Ana Silva', 'ana.silva@email.com', 28);&lt;/code&gt;, que representa cada informação enviada na mesma sequência das colunas informadas anteriormente. Não se esqueça do &lt;code&gt;;&lt;/code&gt;!&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;nome&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;email&lt;/span&gt; &lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;clientes&lt;/span&gt; &lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Bora para a segunda: o comando &lt;code&gt;SELECT&lt;/code&gt; vai dizer:&lt;br&gt;
&lt;em&gt;"Busque/Traga os seguintes campos"&lt;/em&gt;.&lt;br&gt;&lt;br&gt;
Seguido pelas colunas que deseja ver no resultado: &lt;code&gt;nome, email&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;A expressão &lt;code&gt;FROM&lt;/code&gt; indica a origem dos dados (a tradução literal: "DE" ou "A PARTIR DE"), seguida da tabela que será utilizada como origem para a busca dos dados, &lt;code&gt;clientes&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;O &lt;code&gt;WHERE&lt;/code&gt; será utilizado como filtro (a tradução literal é "ONDE"). Ele vai assegurar que você não receba a tabela inteira, mas apenas os dados que atendam à condição desejada.  &lt;/p&gt;

&lt;p&gt;Logo após, será informado &lt;code&gt;id = 1&lt;/code&gt;, que é a condição do filtro. Logo, o banco vai retornar a linha em que a coluna &lt;code&gt;id&lt;/code&gt; for igual a &lt;code&gt;1&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Maneiro, né? 😎  &lt;/p&gt;

&lt;p&gt;O SQL tem também outros tópicos e definições importantes que você também pode buscar. Como, por exemplo, as &lt;strong&gt;Constraints&lt;/strong&gt; (tradução literal: "Restrições" ou "Regras"), que são as regras aplicadas às colunas de uma tabela para assegurar a integridade, consistência e qualidade dos dados.  &lt;/p&gt;

&lt;p&gt;Em termos rústicos, elas vão servir para que não seja possível inserir dados inválidos no seu banco, baseando-se sempre na lógica por trás do modelo de negócio. Por exemplo, se o seu modelo de negócio exige que um usuário tenha um e-mail único para criar uma conta ou que o preço de um produto nunca seja um valor negativo, são as &lt;strong&gt;Constraints&lt;/strong&gt; (&lt;code&gt;UNIQUE&lt;/code&gt; e &lt;code&gt;CHECK&lt;/code&gt;) que vão garantir que essa regra seja cumprida direto no banco de dados.&lt;/p&gt;

&lt;p&gt;Por isso, sem querer jogar água no chopp de ninguém, o que vimos aqui é só a pontinha do iceberg de uma linguagem super ampla e cheia de possibilidades! &lt;/p&gt;

&lt;p&gt;Agradeço pela atenção e pelo tempo dedicados a esta leitura. Isso é muito importante para mim! 😁&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MATERIAIS RELACIONADOS&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://cloud.google.com/discover/what-are-sql-databases?hl=pt-BR" rel="noopener noreferrer"&gt;Google Cloud - O que são bancos de dados SQL?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.ibm.com/br-pt/think/topics/structured-query-language" rel="noopener noreferrer"&gt;IBM - O que é Linguagem de Consulta Estruturada (SQL)?&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Nota: Este conteúdo foi criado por autor humano e revisado por um agente de Inteligência Artificial.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>iniciantes</category>
      <category>sql</category>
      <category>brasileiradevs</category>
      <category>database</category>
    </item>
  </channel>
</rss>
