Baixe o app para aproveitar ainda mais
Prévia do material em texto
WBA0449_v1.0 Codificação do projeto: padrões de programação e projeto do banco de dados Procedimentos de programação em banco de dados utilizando a linguagem SQL Bloco 1 Thiago Salhab Alves Procedimentos de programação em banco de dados utilizando a linguagem SQL Objetivos: • Aprender sobre os procedimentos de programação em banco de dados. • Aprender sobre a linguagem SQL. • Aprender a programar utilizando a linguagem SQL. Procedimentos de programação em banco de dados utilizando a linguagem SQL • A linguagem SQL é considerada como um dos principais motivos para o sucesso de bancos de dados relacionais comerciais. O nome SQL vem de Structured Query Language (Linguagem de Consulta Estruturada). • Inicialmente chamada de SEQUEL (Structured English QUEry Language), ela foi criada e implementada na IBM Research como a interface para um sistema de banco de dados relacional experimental, chamado de SYSTEM R (ELMASRI; NAVATHE, 2019). Procedimentos de programação em banco de dados utilizando a linguagem SQL • SQL é a linguagem padrão para SGBDs (Sistemas Gerenciadores de Banco de Dados) relacionais comerciais. Em um esforço conjunto entre o American National Standards Institute (ANSI) e a International Standars Organization (ISO) levou a uma versão padrão da SQL (ANSI, 1986), chamada de SQL-86 ou SQL1. • O próximo padrão foi o SQL:1999 ou SQL3. Duas atualizações posteriores ao padrão são a SQL: 2003 e SQL: 2006, que acrescentou recursos de XML e atualizações em 2008 e 2016 (SILBERCHATZ; KORTH; SUDARSHAN, 2012). Procedimentos de programação em banco de dados utilizando a linguagem SQL • SQL é uma linguagem para banco de dados com instruções para definição de dados, consultas e atualizações. • Assim, possui um conjunto de comandos para definição de dados DDL (Data Definition Language) contendo os comandos CREATE, ALTER e DROP e para manipulação de dados DML (Data Manipulation Language) contendo os comandos INSERT, UPDATE, DELETE E SELECT. Procedimentos de programação em banco de dados utilizando a linguagem SQL • SQL também apresenta comandos para controle de dados DCL (Data Control Language), que são utilizados para controlar a autorização de dados e licenças de usuários, contendo os comandos GRANT (autoriza o usuário a executar operações) e REVOLKE (remove a autorização de um usuário executar operações). • Comandos para transação de dados DTL (Data Transaction Language), sendo responsáveis por gerenciar transações ocorridas em um banco de dados, contendo os comandos BEGIN TRANSACTION, COMMIT e ROLLBACK. Criando um banco de dados e tabelas O principal comando DDL é o CREATE, que pode ser usado para criar esquemas e tabelas. As primeiras versões do SQL não incluíam o conceito de esquema de banco de dados, sendo introduzido posteriormente a fim de agrupar tabelas e outras construções que pertencem à mesma aplicação de banco de dados. Figura 1 – Criação de Schema Fonte: elaborada pelo autor. Criando um banco de dados e tabelas • O comando CREATE TABLE é utilizado para criar uma nova tabela (relação), atribuindo um nome e especificando seus atributos e restrições. Os atributos são os primeiros a serem especificados, em que cada um recebe um nome e um tipo de dado e restrições, como o NOT NULL (atributo não pode ficar vazio). Figura 2 – Sintaxe para criação de uma tabela Fonte: elaborada pelo autor. Procedimentos de programação em banco de dados utilizando a linguagem SQL Bloco 2 Thiago Salhab Alves Criando um banco de dados e tabelas • Os tipos de dados básicos que são utilizados nos atributos são os numéricos, cadeia de caracteres, cadeia de bits, booleano, data e hora. Os seguintes tipos são considerados (ELMASRI; NAVATHE, 2019): • Numérico: incluem números inteiros (INTEGER ou INT), números reais (FLOAT e DOUBLE PRECISION). O formato dos números pode ser DECIMAL (i, j), onde i é a precisão (número de dígitos decimais) e j é a escala (número de dígito após o ponto decimal). • Cadeia de caracteres: são de tamanho fixo CHAR(n), onde n é o número de caracteres ou de tamanho variável VARCHAR(n). Criando um banco de dados e tabelas • Cadeia de bits: podem ser de tamanho fixo n BIT(n) ou de tamanho variável BIT VARYING (n), onde n é o número máximo de bits, sendo 1 o valor padrão para a cadeia de bits. Outro tipo de cadeia de bits de tamanho variável é o BLOB, usado para especificar colinas com grandes valores binários, como imagens. • Booleano: o tipo booleano tem os valores TRUE (verdadeiro) ou FALSE (falso). • Data: tipo de dado DATE possui dez posições e seus componentes são dia (DAY), mês (MONTH) e ano (YEAR) no formado DD-MM-YYYY. • Hora: o tipo de dado TIME (tempo) possui outras posições, com os componentes hora (HOUR), minuto (MINUTE) e segundo (SECOND) no formato HH:MM:SS. Criando um banco de dados e tabelas • O comando DROP é utilizado para apagar esquemas e tabelas. Figura 3 – Sintaxe para apagar um esquema Fonte: elaborada pelo autor. Figura 4 – Sintaxe para apagar uma tabela Fonte: elaborada pelo autor. Criando um banco de dados e tabelas Figura 5 – Criação das tabelas utilizando a linguagem SQL Fonte: elaborada pelo autor. Criando um banco de dados e tabelas Figura 6 – Criação das tabelas utilizando a linguagem SQL Fonte: elaborada pelo autor. Criando um banco de dados e tabelas Figura 7 – Alteração de tabelas utilizando a linguagem SQL Fonte: elaborada pelo autor. Procedimentos de programação em banco de dados utilizando a linguagem SQL Bloco 3 Thiago Salhab Alves Principais comandos DML • Para a atualização de dados, os comandos INSERT, DELETE e UPDATE são utilizados. O comando INSERT permite a inserção de registros na tabela. Figura 8 – Inserção de dados utilizando a linguagem SQL Fonte: elaborada pelo autor. Principais comandos DML • O comando DELETE remove tuplas (registros ou linha de dado) de uma relação. Figura 9 – Exclusão de registros utilizando a linguagem SQL Fonte: elaborada pelo autor. Principais comandos DML • O comando UPDATE usado para modificar os valores dos atributos de uma ou mais tuplas. Figura 10 – Atualização de registros utilizando a linguagem SQL Fonte: elaborada pelo autor. Principais comandos DML • O comando SELECT é utilizado para consulta de dados. O comando básico da declaração do SELECT é composto por três cláusulas: SELECT, FROM e WHERE e tem a seguinte forma (ELMASRI; NAVATHE, 2019): SELECT <lista de atributos> FROM <lista de tabelas> WHERE <condição> Principais comandos DML Figura 11 – Consulta de registros utilizando a linguagem SQL Fonte: elaborada pelo autor. Principais comandos DML Figura 12 – Exemplo do uso do Alias nas consultas SQL Fonte: elaborada pelo autor. Principais comandos DML A linguagem SQL também faz uso de algumas funções de agregação. Figura 13 – Consultas SQL utilizando funções de agregação Fonte: elaborada pelo autor. Principais comandos DML • SQL tem uma cláusula GROUP BY para especificar os atributos de agrupamento, que também deve aparecer na cláusula SELECT. Figura 14 – Consultas SQL utilizando função GROUP BY Fonte: elaborada pelo autor. Teoria em Prática Bloco 4 Thiago Salhab Alves Reflita sobre a seguinte situação Uma loja de produtos colecionáveis está necessitando de um sistema de controle de estoque e para registro de suas vendas. A loja vende personagens colecionáveis, canecas, chaveiros, jogos de tabuleiros, entre outros produtos. Hoje a organização realiza todo o armazenamento de suas vendas em Excel, dificultando o controle do estoque. O estabelecimento gostaria de um sistema que efetuasse o cadastro de clientes, produtos, fornecedores, compra e venda de produtos. Você já realizou a construção do modelo entidade-relacionamento, realize a proposta da criação das tabelas utilizando a linguagem SQL. Norte para a resolução... Figura 15 – Construção do modelo entidade-relacionamento Fonte: elaborada peloautor. Dica do Professor Bloco 5 Thiago Salhab Alves Dica do Professor Este artigo discute o impacto da linguagem SQL em relação às representações de dados. Para realizar a leitura, acesse a plataforma Biblioteca Virtual da Kroton/EBSCO HOST e busque pelo título da obra. HELLAND, P. The Singular Success of SQL. Communications of the ACM, [S. l.], v. 59, n. 8, p. 38–41, 2016. DOI 10.1145/2948983. Dica do Professor Este artigo apresenta uma revisão dos diferentes tipos de ataques de injeção de SQL e as técnicas de detecção e prevenção existentes contra-ataques de injeção de SQL. Para realizar a leitura, acesse a plataforma Biblioteca Virtual da Kroton/EBSCO HOST e busque pelo título da obra. SADOTRA, P.; SHARMA, C. SQL Injection Impact on Web Server and Their Risk Mitigation Policy Implementation Techniques: An Ultimate solution to Prevent Computer Network from Illegal Intrusion. International Journal of Advanced Research in Computer Science, [S. l.], v. 8, n. 3, p. 678–686, 2017. Referências ELMASRI, R.; NAVATHE, S. B. Sistemas de banco de dados. 7. ed. São Paulo: Pearson Education, 2019. SILBERCHATZ, A.; KORTH, H. F.; SUDARSHAN, S. Sistema de banco de dados. 6. ed. São Paulo: Campus, 2012. Bons estudos! Codificação do projeto: padrões de programação e projeto do banco de dados Procedimentos de programação em banco de dados utilizando a linguagem SQL Procedimentos de programação em banco de dados utilizando a linguagem SQL Procedimentos de programação em banco de dados utilizando a linguagem SQL Procedimentos de programação em banco de dados utilizando a linguagem SQL Procedimentos de programação em banco de dados utilizando a linguagem SQL Procedimentos de programação em banco de dados utilizando a linguagem SQL Criando um banco de dados e tabelas Criando um banco de dados e tabelas Procedimentos de programação em banco de dados utilizando a linguagem SQL Criando um banco de dados e tabelas Criando um banco de dados e tabelas Criando um banco de dados e tabelas Criando um banco de dados e tabelas Criando um banco de dados e tabelas Criando um banco de dados e tabelas Procedimentos de programação em banco de dados utilizando a linguagem SQL Principais comandos DML Principais comandos DML Principais comandos DML Principais comandos DML Principais comandos DML Principais comandos DML Principais comandos DML Principais comandos DML Teoria em Prática Reflita sobre a seguinte situação Norte para a resolução... Dica do Professor Dica do Professor Dica do Professor Referências Bons estudos!
Compartilhar