{"id":39108,"date":"2023-01-31T10:00:00","date_gmt":"2023-01-31T13:00:00","guid":{"rendered":"https:\/\/blog.locaweb.com.br\/?p=39108"},"modified":"2024-07-30T17:45:07","modified_gmt":"2024-07-30T20:45:07","slug":"o-que-preciso-para-trabalhar-com-sql","status":"publish","type":"post","link":"https:\/\/www.locaweb.com.br\/blog\/temas\/codigo-aberto\/o-que-preciso-para-trabalhar-com-sql\/","title":{"rendered":"O que \u00e9 preciso saber para trabalhar com SQL?"},"content":{"rendered":"\n<p class=\"has-text-align-center\"><em>SQL evoluiu ao longo de 50 anos para impulsionar a produtividade no processamento de dados<\/em><\/p>\n\n\n\n<p>A <strong>Structured Query Language (<a href=\"https:\/\/blog.locaweb.com.br\/produtos\/vps-e-cloud\/banco-de-dados-3-coisas-que-todo-desenvolvedor-precisa-saber\/\" target=\"_blank\" rel=\"noreferrer noopener\">SQL<\/a>)<\/strong> foi proposta pela primeira vez pelo matem\u00e1tico Edgar Frank Codd, que iniciou a carreira na International Business Machines Corporation (IBM) em 1949.<\/p>\n\n\n\n<p>Posteriormente, a partir dos anos 1960, ele come\u00e7ou a desenvolver o modelo relacional na empresa, o que acabou servindo como padr\u00e3o na engenharia de <a href=\"https:\/\/blog.locaweb.com.br\/produtos\/vps-e-cloud\/banco-de-dados-3-coisas-que-todo-desenvolvedor-precisa-saber\/\" target=\"_blank\" rel=\"noreferrer noopener\">banco de dados<\/a> at\u00e9 hoje.<\/p>\n\n\n\n<p>De acordo com Codd, o <strong>Data Base Management System<\/strong> (DBMS) n\u00e3o conseguia impulsionar a produtividade no trabalho no in\u00edcio da d\u00e9cada de 1970 devido ao<strong> uso de conceitos irrelevantes na manipula\u00e7\u00e3o das informa\u00e7\u00f5es<\/strong>, al\u00e9m da impossibilidade de processar v\u00e1rios registros ao mesmo tempo.<\/p>\n\n\n\n<p>Por isso, ele prop\u00f4s <strong>simplificar o c\u00f3digo e ampliar a capacidade de consulta<\/strong>.<\/p>\n\n\n\n<p>&#8220;Ela foi batizada de Structured English Query Language (SEQUEL)<em> <\/em>e logo depois passou a ser chamada de Structured Query Language (SQL)&#8221;, explica Alexandre Barcelos, professor nas disciplinas de Banco de Dados nos cursos de gradua\u00e7\u00e3o e p\u00f3s-gradua\u00e7\u00e3o do Centro Universit\u00e1rio Faculdade de Inform\u00e1tica e Administra\u00e7\u00e3o Paulista (FIAP).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>O que \u00e9 SQL?<\/strong><\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img decoding=\"async\" src=\"https:\/\/www.locaweb.com.br\/blog\/wp-content\/uploads\/2023\/01\/Guia-de-SQL-1.jpg\" alt=\"Logo da Microsoft SQL Server sobre um fundo vermelho\" class=\"wp-image-39109\" width=\"609\" height=\"375\"\/><\/figure>\n<\/div>\n\n\n<p><strong>A SQL \u00e9 uma <a href=\"https:\/\/blog.locaweb.com.br\/temas\/codigo-aberto\/linguagem-de-programacao-voltada-para-big-data-qual-devo-usar\/\" target=\"_blank\" rel=\"noreferrer noopener\">linguagem de programa\u00e7\u00e3o<\/a> declarativa projetada para armazenar, recuperar, gerenciar ou manipular dados em um sistema de gerenciamento de banco de dados relacional<\/strong> (SGBDR), usada para desenvolver aplicativos de tabelas com aumento de produtividade no processamento de informa\u00e7\u00f5es.<\/p>\n\n\n\n<p>Como os bancos de dados podem conter o m\u00e1ximo ou o m\u00ednimo de informa\u00e7\u00f5es necess\u00e1rias, ter um sistema de an\u00e1lise de dados que n\u00e3o apresente problemas \u00e9 uma necessidade absoluta. <\/p>\n\n\n\n<p>Ele funciona como a linguagem dos bancos de dados que permite <strong>transformar dados n\u00e3o estruturados em informa\u00e7\u00f5es \u00fateis<\/strong>.<\/p>\n\n\n\n<p>O c\u00f3digo se tornou padr\u00e3o do American National Standards Institute (ANSI) em 1986 e da International Organization for Standardization (ISO) em 1987. <\/p>\n\n\n\n<p>Em 1988, a Microsoft, em parceria com a Sybase, desenvolveu o <strong>Microsoft SQL Server<\/strong>, que eventualmente se tornou <strong>um dos melhores sistemas de gerenciamento de banco de dados do mundo<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Para que serve SQL?<\/strong><\/h2>\n\n\n\n<p><strong>SQL \u00e9 a linguagem padr\u00e3o utilizada para manipular dados em um SGBDR<\/strong> e executar tarefas como atualizar ou recuperar informa\u00e7\u00f5es em um banco de dados. Alguns sistemas comuns de gerenciamento de banco de dados relacional que usam SQL s\u00e3o:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Oracle;<\/li>\n\n\n\n<li>Sybase;<\/li>\n\n\n\n<li>Microsoft SQL Server;<\/li>\n\n\n\n<li>Access;<\/li>\n\n\n\n<li>Ingres.<\/li>\n<\/ul>\n\n\n\n<p>\u201cO profissional de dados, como <strong>analista de dados<\/strong>, <strong>cientista de dados<\/strong> e <strong>desenvolvedor de back-end<\/strong>, ou que trabalha em um campo que \u00e9 remotamente orientado a dados, <strong>precisa ter um bom entendimento do que \u00e9 SQL<\/strong>\u201d, recomenda Barcelos.<\/p>\n\n\n\n<p>Al\u00e9m disso, como <strong>v\u00e1rias empresas dependem cada vez mais da an\u00e1lise de big data<\/strong>, ela se tornou uma habilidade em demanda no desenvolvimento de intelig\u00eancia artificial (IA) e machine learning.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Quais s\u00e3o as vantagens e as desvantagens da linguagem?<\/strong><\/h2>\n\n\n\n<p>\u201cUma das vantagens \u00e9 que a linguagem SQL \u00e9 bastante simples e f\u00e1cil de ser utilizada\u201d, afirma o professor. <strong>O c\u00f3digo torna mais \u00e1gil a migra\u00e7\u00e3o de aplica\u00e7\u00f5es, reduz os erros cotidianos e padroniza as opera\u00e7\u00f5es do processamento de dados<\/strong>, permitindo a <a href=\"https:\/\/blog.locaweb.com.br\/temas\/codigo-aberto\/10-ferramentas-de-gestao-para-desenvolvedores\/\" target=\"_blank\" rel=\"noreferrer noopener\">gest\u00e3o integrada<\/a> e a an\u00e1lise dos dados.<\/p>\n\n\n\n<p>O SQL possibilita, ainda, m\u00faltiplas vis\u00f5es de dados e permite a implementa\u00e7\u00e3o da arquitetura cliente-servidor. <strong>S\u00e3o poucas linhas de c\u00f3digo<\/strong>, com express\u00f5es b\u00e1sicas em ingl\u00eas, o que torna a <strong>programa\u00e7\u00e3o agrad\u00e1vel e acess\u00edvel<\/strong>.<\/p>\n\n\n\n<p>Contudo, a linguagem tem desvantagens: \u201cA manipula\u00e7\u00e3o dela exige a utiliza\u00e7\u00e3o de procedimentos espec\u00edficos (procedures) que s\u00e3o disponibilizados pelos diversos fabricantes\u201d, alerta. Como cada fabricante implementa uma solu\u00e7\u00e3o espec\u00edfica, isso gera custo e mais dificuldade com as interfaces.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Quem deve e como aprender SQL?<\/strong><\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img decoding=\"async\" src=\"https:\/\/www.locaweb.com.br\/blog\/wp-content\/uploads\/2023\/01\/Guia-de-SQL-2.jpg\" alt=\"Imagem mostra dois profissionais trabalhando com SQL\" class=\"wp-image-39110\" width=\"609\" height=\"375\"\/><\/figure>\n<\/div>\n\n\n<p>Todos os profissionais que trabalham com manipula\u00e7\u00e3o de dados devem conhecer a linguagem SQL:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>administradores de banco de dados;<\/li>\n\n\n\n<li>analistas de dados;<\/li>\n\n\n\n<li><strong>engenheiros de dados<\/strong>;<\/li>\n\n\n\n<li><a href=\"https:\/\/blog.locaweb.com.br\/temas\/codigo-aberto\/python-matplotlib-conheca-a-biblioteca-de-visualizacao-de-dados\/\" target=\"_blank\" rel=\"noreferrer noopener\">cientistas de dados<\/a>;<\/li>\n\n\n\n<li>desenvolvedores e programadores.<\/li>\n<\/ul>\n\n\n\n<p>\u201cA SQL \u00e9 uma linguagem interessante de se aprender pois, por ser consolidada h\u00e1 bastante tempo no mercado, novas solu\u00e7\u00f5es para a manipula\u00e7\u00e3o de dados n\u00e3o estruturados em SGBDs do tipo NoSQL v\u00eam sendo criadas\u201d, recomenda o professor.<\/p>\n\n\n\n<p><strong>Muitas solu\u00e7\u00f5es utilizam linguagens com a escrita bastante semelhante \u00e0 da SQL.<\/strong> Por exemplo, o banco de dados Apache HIVE, que \u00e9 um sistema de data warehouse para big data, utiliza a linguagem HiveQL, que apresenta diversas semelhan\u00e7as com a SQL.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Organiza\u00e7\u00e3o da linguagem de programa\u00e7\u00e3o<\/strong><\/h2>\n\n\n\n<p>S\u00e3o cinco subconjuntos que dividem a linguagem SQL:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. Data Definition Laguage<\/strong><\/h3>\n\n\n\n<p>A Data Definition Laguage (DDL), ou linguagem de defini\u00e7\u00e3o de dados, <strong>inclui as instru\u00e7\u00f5es SQL que criam e descartam locais, bancos de dados e objetos de banco de dados<\/strong>, assim como tabelas e \u00edndices. <\/p>\n\n\n\n<p>Tamb\u00e9m <strong>inclui instru\u00e7\u00f5es para alterar objetos de <a href=\"https:\/\/blog.locaweb.com.br\/produtos\/descricao-de-banco-de-dados\/\" target=\"_blank\" rel=\"noreferrer noopener\">banco de dados<\/a> e impor restri\u00e7\u00f5es de integridade em tabelas.<\/strong> Todas as instru\u00e7\u00f5es DDL atualizam automaticamente as tabelas de cat\u00e1logo do sistema apropriadas.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. Data Manipulation Language<\/strong><\/h3>\n\n\n\n<p>A Data Manipulation Language (DML), ou linguagem de manipula\u00e7\u00e3o de dados, <strong>\u00e9 um subconjunto de opera\u00e7\u00f5es usadas para inserir, excluir e atualizar dados em um banco de dados<\/strong>. Uma DML geralmente \u00e9 uma sublinguagem de uma linguagem mais extensa, como SQL.<\/p>\n\n\n\n<p>A sele\u00e7\u00e3o de dados somente leitura est\u00e1 intimamente relacionada e \u00e0s vezes tamb\u00e9m \u00e9 considerada um componente de DML, pois alguns usu\u00e1rios podem executar a sele\u00e7\u00e3o de leitura e grava\u00e7\u00e3o.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Data Transaction Language<\/strong><\/h3>\n\n\n\n<p>A Data Transaction Language (DTL), ou linguagem de controle de transa\u00e7\u00e3o, <strong>gerencia as mudan\u00e7as nos dados que s\u00e3o feitas pelas opera\u00e7\u00f5es DML.<\/strong> A altera\u00e7\u00e3o feita pelos comandos DML, como UPDATE, INSERT e DELETE, n\u00e3o \u00e9 permanente e pode ser cancelada antes que a sess\u00e3o atual seja encerrada.<\/p>\n\n\n\n<p>Para controlar as altera\u00e7\u00f5es e o processamento de dados, a DTL \u00e9 usada simultaneamente com DML. Como s\u00e3o realizadas muitas opera\u00e7\u00f5es nos dados, o banco de dados pode se tornar inconsistente entre as transa\u00e7\u00f5es.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>4. Data Control Language<\/strong><\/h3>\n\n\n\n<p>A Data Control Language (DCL), ou linguagem de controle de dados,<strong> inclui comandos como GRANT e REVOKE, que lidam principalmente com direitos, permiss\u00f5es e outros controles de sistema de banco de dados.<\/strong><\/p>\n\n\n\n<p>Lista de comandos DCL:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>GRANT \u2014 d\u00e1 aos usu\u00e1rios privil\u00e9gios de acesso ao banco de dados;<\/li>\n\n\n\n<li>REVOKE \u2014 retira os privil\u00e9gios de acesso do usu\u00e1rio concedidos usando o comando GRANT.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>5. Data Query Language<\/strong><\/h3>\n\n\n\n<p>A Data Query Language (DQL), ou instru\u00e7\u00e3o da linguagem de consulta de dados,<strong> serve para realizar consultas nos dados dentro de objetos do esquema<\/strong>. <\/p>\n\n\n\n<p>O objetivo do comando DQL \u00e9 obter alguma rela\u00e7\u00e3o de esquema com base na consulta passada para ele. Pode-se definir DQL da seguinte forma: <strong>componente da instru\u00e7\u00e3o SQL que permite obter dados do banco de dados e impor ordem sobre eles<\/strong>.<\/p>\n\n\n\n<p>Inclui a instru\u00e7\u00e3o SELECT, comando que permite obter dados do banco de dados para realizar opera\u00e7\u00f5es com ele. <\/p>\n\n\n\n<p>Ao acionar um SELECT contra uma tabela ou mais tabelas, o resultado \u00e9 compilado em uma tabela tempor\u00e1ria adicional, que \u00e9 exibida ou recebida pelo programa, ou seja, em front-end.<\/p>\n\n\n\n<div class=\"user-cta-block\" style=\"background-color:#2E333C;\"><p>Procurando performance, espa\u00e7o e melhor custo-benef\u00edcio do mercado? Conhe\u00e7a as solu\u00e7\u00f5es de revenda de hospedagem Locaweb.<\/p><a class=\"user-cta\" style=\"background-color: #F00842;\" href=\"https:\/\/bit.ly\/3XY7iWP:;\" target=\"_blank\" rel=\"noopener\">Clique aqui<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>SQL evoluiu ao longo de 50 anos para impulsionar a produtividade no processamento de dados A Structured Query Language (SQL) foi proposta pela primeira vez pelo matem\u00e1tico Edgar Frank Codd, que iniciou a carreira na International Business Machines Corporation (IBM) em 1949. Posteriormente, a partir dos anos 1960, ele come\u00e7ou a desenvolver o modelo relacional [&hellip;]<\/p>\n","protected":false},"author":24,"featured_media":39111,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[5],"tags":[],"class_list":["post-39108","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-codigo-aberto"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/posts\/39108","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/users\/24"}],"replies":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/comments?post=39108"}],"version-history":[{"count":6,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/posts\/39108\/revisions"}],"predecessor-version":[{"id":42002,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/posts\/39108\/revisions\/42002"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/media\/39111"}],"wp:attachment":[{"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/media?parent=39108"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/categories?post=39108"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/tags?post=39108"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}