Banco de Dados SQL injection

Tamanho: px
Começar a partir da página:

Download "Banco de Dados SQL injection"

Transcrição

1 Universidade Estadual de Mato Grosso do Sul Curso de Computação, Licenciatura Banco de Dados SQL injection '1 = 1 Prof. José Gonçalves Dias Neto profneto_ti@hotmail.com

2 SQL Injection - Introdução Injeção de SQL, ou SQL embutido, é uma vulnerabilidade existente em bancos de dados, utilizadores da linguagem SQL, consistindo em uma técnica que se aproveita de sentenças de SQL previamente existentes nesses bancos de dados e as amplia ou danifica de forma que o atacante consiga obter dados que não estariam disponíveis na sentença original, ou simplesmente que seja capaz de executar comandos danosos à base de dados existente. Assim o atacante consegue inserir uma sentença SQL dentro de outra previamente existente. Isso é possível quando a aplicação é capaz de pegar entradas do usuário e combinar com parâmetros estáticos para montar uma consulta SQL.

3 Construímos um banco de dados fictício o qual chamamos de SQLINJECTION. Neste construímos unicamente uma tabela a partir do seguinte comando SQL. CREATE TABLE LOGIN( user VARCHAR(10) NOT NULL PRIMARY KEY, senha VARCHAR(10) NOT NULL); Feito isto, abastecemos com diversas entradas a tabela criada. Obviamente poderíamos listar todos os usuários inseridos na respectiva tabela a partir do seguinte comando. SELECT * FROM LOGIN;

4 Uma aplicação faria a busca de um login válido desta forma: SELECT * FROM LOGIN WHERE user = 'campo_nome' AND senha = 'campo_senha'; Onde campo_nome e campo_senha, sejam entradas passadas pelo usuário. Neste caso, qualquer nome de usuário que não pertença à tabela não retornará elementos, o mesmo acontece com a senha e com a junção user + senha.

5 Através da técnica de SQL injection, podemos modificar o comportamento de uma sentença e trabalhar com seus resultados. O primeiro teste básico que podemos fazer, é causar uma quebra ou parada inesperada na sentença através da utilização do caractere especial ; (ponto e virgula), mas para isso também precisaremos trabalhar com o caractere aspa simples. Faremos o seguinte, no local do campo_nome inseriremos apenas mais uma aspa simples entre as duas, e após isto um ponto e virgula, ficando a sentença da seguinte forma: SELECT * FROM LOGIN WHERE user = '';' AND senha = 'campo_senha';

6 Isto causará a execução da sentença unicamente até a comparação user = '' pois após isto o ponto-e-vírgula indicará o término da sentença. Obviamente não foi mérito apenas do ponto-e-virgula, o qual foi responsável unicamente por identificar o término da sentença, porém se o mesmo estivesse sozinho dentro das aspas inicialmente existentes, permitiria que TODA a sentença fosse executada, pois as aspas indicariam que ele não se trataria naquele momento de um caractere especial de comando, mas sim de um caractere de texto informado pelo usuário. Através da utilização consciente da aspa, podemos manipular a sentença, indicando o que é ou não um caractere de texto ou de comando, facilitando a injeção de código malicioso onde antes era possível apenas a inserção de texto simples.

7 Alterando a sentença inicial com a inserção de uma aspa simples entre as duas existentes do usuário, verificamos que o SGBD não identifica o final da sentença, permitindo ao usuário inserir mais e mais caracteres. Isto se deve pois o SGBD aguarda o caractere de ponto e vírgula, pois o que está contido na sentença está agora sendo tratado como texto e não comando. SELECT * FROM LOGIN WHERE user = ''' AND senha = 'campo_senha';

8 A partir desta informação, podemos alterar a sentença de forma a transformar tudo o que existe entre o primeiro dado informado pelo usuário (campo_user) e tudo antes do campo_senha, de modo a serem interpretado como texto. Depois disso, podemos inserir uma sentença que sabidamente retornará sempre verdadeira fazendo com que haja liberações do SGBD de dados pertencentes à tabela acessada. Assim, uma forma de termos acesso a TODOS os dados da tabela é inserir o seguinte texto dentro de user e senha respectivamente: campo_user ' campo_senha '1=1

9 Ficando o comando escrito da seguinte forma: SELECT * FROM LOGIN WHERE user = '''1 AND senha = 'or '1=1'; Para efeito de melhor expressão, o mesmo comando será reescrito com o que será interpretado como texto pelo SBGD com fundo amarelo. SELECT * FROM LOGIN WHERE user = '''1 AND senha = 'or '1=1'; Sentença esta que poderia também ser expressa da seguinte forma: SELECT * FROM LOGIN WHERE user = '''1 AND senha = 1' or '1' = '1';

10 SQL Injection - Proteção Uma das formas de se proteger deste ataque é efetuar a checagem de campos do tipo string evitando a entradas que contenham os seguintes caracteres especiais: " (aspas duplas) ' (aspas simples) ; (ponto e vírgula) = (sinal de igual) < (sinal de menor que) > (sinal de maior que)! (ponto de exclamação) -- (dois hifens) # (sustenido ou jogo-da-velha) // (duas barras) Palavras chave devem ser evitadas: - SELECT INSERT - UPDATE - DELETE WHERE - JOIN - LEFT - INNER - NOT - IN - LIKE - TRUNCATE- - DROP - ALTER - CREATE - DELIMITER *Os 3 últimos indicam início de comentário em alguns bancos) Outra forma, seria criptografar as entradas antes de salvar no banco, e no momento da consulta efetuar a criptografia do conteúdo comparando com a informação criptografada anteriormente.

11 Bibliografia

SQL/HTML Injection e Criptografia Professor Fábio Luís da Silva Santos

SQL/HTML Injection e Criptografia Professor Fábio Luís da Silva Santos SQL/HTML Injection e Criptografia Professor Fábio Luís da Silva Santos SQL Injection Muitos desenvolvedores web não sabem de como consultas SQL podem ser manipuladas e presumem que uma consulta de SQL

Leia mais

IMPLEMENTAÇÃO DE BANCO DE DADOS

IMPLEMENTAÇÃO DE BANCO DE DADOS IMPLEMENTAÇÃO DE BANCO DE DADOS MODULO 2 LINGUAGEM SQL CONTEÚDO 2. LINGUAGEM SQL 2.1 Linguagens de Definição de Dados (DDL) 2.1.1 Criação de tabela: CREATE 2.1.2 Alteração de Tabela: ALTER 2.1.3 Exclusão

Leia mais

Banco de Dados I Introdução SQL

Banco de Dados I Introdução SQL Banco de Dados I Introdução SQL Frederico Queiroga fredericoqueiroga@gmail.com https://sites.google.com/site/fredericoqueiroga/ Linguagem SQL Aspectos Gerais: Independência do fabricante: Está incorporada

Leia mais

Banco de Dados. Professora: Luciana Faria

Banco de Dados. Professora: Luciana Faria Banco de Dados Professora: Luciana Faria Introdução ao linguagem é a SQL (Structured Query Language) Linguagem de Consulta Estruturada Para se utilizar, administrar, e trabalhar com um banco de dados é

Leia mais

Fundamentos de Banco de Dados Postgre com Sql

Fundamentos de Banco de Dados Postgre com Sql Fundamentos de Banco de Dados Postgre com Sql Prof. Luiz Claudio Ferreira de Souza Prof. Luiz Claudio F. de Souza 1 Obtenha os Slids no endereço www.luizclaudiofs.blogspot.com Prof. Luiz Claudio F. de

Leia mais

Banco de Dados. -Aprendendo conceitos -Usando o SQL Conf para: -Conectar no banco de dados -Criar, alterar, excluir e consultar estruturas de tabelas

Banco de Dados. -Aprendendo conceitos -Usando o SQL Conf para: -Conectar no banco de dados -Criar, alterar, excluir e consultar estruturas de tabelas Banco de Dados -Aprendendo conceitos -Usando o SQL Conf para: -Conectar no banco de dados -Criar, alterar, excluir e consultar estruturas de tabelas O que é banco de dados? São conjuntos de registros dispostos

Leia mais

Revisão de Bancos de Dados

Revisão de Bancos de Dados Revisão de Bancos de Dados Conceitos Básicos 1. Defina o que é um banco de dados e o que é um sistema gerenciador de bancos de dados (SGBD). 2. Defina as arquiteturas de software em duas camadas (cliente/servidor)

Leia mais

SQL CREATE DATABASE. MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL.

SQL CREATE DATABASE. MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL. LINGUAGEM SQL SQL CREATE DATABASE MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL. SQL CREATE TABLE SQL NOT NULL O valor NOT NULL obriga que o campo contenha sempre

Leia mais

Lidando com Armazenamento de Dados

Lidando com Armazenamento de Dados Lidando com Armazenamento de Dados Paulo Ricardo Lisboa de Almeida 1 Armazenamento de Dados A grande maioria das aplicações possuem algum mecanismo para armazenagem de dados Dados de usuários Permissões

Leia mais

DDL DML DCL DTL Tipos Numéricos: INT FLOAT DOUBLE Tipos String: CHAR VARCHAR BINARY BLOB TEXT Tipos Data e Hora: DATE TIME TIMESTAMP YEAR

DDL DML DCL DTL Tipos Numéricos: INT FLOAT DOUBLE Tipos String: CHAR VARCHAR BINARY BLOB TEXT Tipos Data e Hora: DATE TIME TIMESTAMP YEAR SQL Structured Query Language, ou Linguagem de Consulta Estruturada, foi desenvolvida pela IBM nos anos 70 para demonstrar a viabilidade do modelo relacional para bancos de dados. No final dos anos 80

Leia mais

Preparação. Linguagem de Manipulação de Dados (DML) Estudo Dirigido 10/12/2013

Preparação. Linguagem de Manipulação de Dados (DML) Estudo Dirigido 10/12/2013 Linguagem de Manipulação de Dados (DML) Estudo Dirigido A Linguagem SQL Preparação Criar um banco de dados denominado Escola ; Criar a tabela, como especificado abaixo: # RA Numeric(8) Nome Serie Turma

Leia mais

Marcos Alexandruk Marcos Alexandruk

Marcos Alexandruk Marcos Alexandruk Marcos Alexandruk m.alexandruk@gmail.com Apresentação disponível em: www.dba.net.br/mysql.pdf Parte I: Download e Instalação MySQL - Download www.mysql.com/downloads MySQL - Download MySQL - Download MySQL

Leia mais

S U B G R U P O S D M L E D Q L : A L T E R A N D O E A P A G A N D O D A D O S E M U M A T A B E L A

S U B G R U P O S D M L E D Q L : A L T E R A N D O E A P A G A N D O D A D O S E M U M A T A B E L A BANCO DE DADOS GERENCIAL 1 A U L A 4 S U B G R U P O S D M L E D Q L : A L T E R A N D O E A P A G A N D O D A D O S E M U M A T A B E L A INDEPENDÊNCIA DOS DADOS A habilidade de modificar a definição

Leia mais

Manipulação de Dados com SQL

Manipulação de Dados com SQL Manipulação de Dados com SQL Wendel Melo Faculdade de Computação Universidade Federal de Uberlândia www.facom.ufu.br/~wendelmelo Banco de Dados I manipulação de dados com SQL 2 Structured Query Language

Leia mais

C A P I T U L O 10 F U N Ç Õ E S I N T E R N A S P H P P A R A B A N C O D E D A D O S

C A P I T U L O 10 F U N Ç Õ E S I N T E R N A S P H P P A R A B A N C O D E D A D O S C A P I T U L O 10 F U N Ç Õ E S I N T E R N A S P H P P A R A B A N C O D E D A D O S Para desenvolver um sistema que utilizará um banco de dados, precisamos estabelecer uma conexão entre a linguagem

Leia mais

Preparação criar tabela. Linguagem de Manipulação de Dados (DML) Estudo Dirigido 12/11/2018

Preparação criar tabela. Linguagem de Manipulação de Dados (DML) Estudo Dirigido 12/11/2018 Linguagem de Manipulação de Dados (DML) Estudo Dirigido A Linguagem SQL Preparação criar tabela Criar um novo arquivo de banco de dados chamado Escola Criar a tabela, como especificado abaixo: Create table

Leia mais

Programando em SQL. Triggers, Stored Procedures e funções. Profa. Késsia Marchi

Programando em SQL. Triggers, Stored Procedures e funções. Profa. Késsia Marchi Programando em SQL Triggers, Stored Procedures e funções Objetivo Descrever as funcionalidades de triggers, store procedures e funções; Apresentar vantagens e benefícios; Criação e Gerenciamento de Store

Leia mais

AULA 8. Ambientes Visuais 8.1. OBJETIVO DA AULA SQL (Structured Query Language)

AULA 8. Ambientes Visuais 8.1. OBJETIVO DA AULA SQL (Structured Query Language) AULA 8 8.1. OBJETIVO DA AULA Relembrar conceitos e recursos básicos apresentados nas aulas anteriores, dar continuidade nas codificações iniciadas e ainda não finalizadas, explorar acesso a banco de dados

Leia mais

Linguagem de pesquisa declarativa para banco de dados relacional; 1ª Versão - Desenvolvida pela IBM no laboratório de pesquisa de San José;

Linguagem de pesquisa declarativa para banco de dados relacional; 1ª Versão - Desenvolvida pela IBM no laboratório de pesquisa de San José; MySQL SQL (Structured Query Languagem ) Linguagem de pesquisa declarativa para banco de dados relacional; 1ª Versão - Desenvolvida pela IBM no laboratório de pesquisa de San José; Inicialmente - Sequel

Leia mais

BANCO DE DADOS. Vinícius Pádua

BANCO DE DADOS. Vinícius Pádua BANCO DE DADOS O que é Banco de Dados? Introdução Para que serve um arquivo? Salvar, atualizar, recuperar,... Aplicativos e Arquivos Utilizam para salvar os dados mesmo após o programa fechar Estrutura

Leia mais

BANCO DE DADOS PARA WEB

BANCO DE DADOS PARA WEB BANCO DE DADOS PARA WEB PROF. FABIANO TAGUCHI http://fabianotaguchi.wordpress.com fabianotaguchi@gmail.com BANCO DE DADOS O banco de dados será de fundamental importância para a criação de páginas dinâmicas,

Leia mais

Uma solução possível para garantir, em ambiente APEX, a consistência duma estrutura ISA, total e disjuntiva.

Uma solução possível para garantir, em ambiente APEX, a consistência duma estrutura ISA, total e disjuntiva. Uma solução possível para garantir, em ambiente APEX, a consistência duma estrutura ISA, total e disjuntiva. Seja então o conjunto de entidades pessoa, com os atributos bi_pessoa, nome_pessoa e morada_pessoa,

Leia mais

Aula de SQL Comandos DDL. André Luiz de Oliveira Eduardo Raul Hruschka

Aula de SQL Comandos DDL. André Luiz de Oliveira Eduardo Raul Hruschka Aula de SQL Comandos DDL André Luiz de Oliveira Eduardo Raul Hruschka E-mail: andre_luiz@icmc.usp.br erh@icmc.usp.br Agenda Instalação do MySQL e Workbench Comandos DDL Data Definition Language Criação

Leia mais

A linguagem SQL

A linguagem SQL SQL 2008.1 A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua primeira versão

Leia mais

SQL (Tópicos) Structured Query Language

SQL (Tópicos) Structured Query Language SQL (Tópicos) Structured Query Language ISI Introdução aos Sistemas de Informação SQL (Tópicos) 1 SQL: componentes SQL / DDL (Data Definition Language) Permite definir os Esquemas de Relação Permite definir

Leia mais

Banco de dados POO Márcio Delamaro. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP

Banco de dados POO Márcio Delamaro. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP Banco de dados POO Márcio Delamaro 1/37 Objetivo Nesta aula vamos dar uma breve introdução do que é um Banco de dados relacional Como acessar um banco de dados usando Java 2/37 O que é Bancos de dados

Leia mais

ANÁLISE E PROJETO DE BANCO DE DADOS

ANÁLISE E PROJETO DE BANCO DE DADOS ANÁLISE E PROJETO DE BANCO DE DADOS SQL FELIPE G. TORRES SQL A linguagem SQL (Struct Query Language) é utilizada como padrão em bancos de dados relacionais. Seu desenvolvimento foi originalmente no início

Leia mais

SQL INJECTION: ENTENDENDO E EVITANDO. MAGALHÃES, Felipe. B. ¹, BASTOS, Rafael. R² RESUMO

SQL INJECTION: ENTENDENDO E EVITANDO. MAGALHÃES, Felipe. B. ¹, BASTOS, Rafael. R² RESUMO SQL INJECTION: ENTENDENDO E EVITANDO MAGALHÃES, Felipe. B. ¹, BASTOS, Rafael. R² ¹ Faculdade IDEAU Bagé RS Brasil magalhaesbg@gmail.com ² Faculdade IDEAU Bagé RS Brasil rafaelrodriguesbastos@gmail.com

Leia mais

E-BOOK GUIA RÁPIDO DE SQL W W W. T R E I N A W E B.C O M. B R

E-BOOK GUIA RÁPIDO DE SQL W W W. T R E I N A W E B.C O M. B R 101010101 001010101 101010100 E-BOOK GUIA RÁPIDO DE SQL INTRODUÇÃO Este é um guia rápido de SQL criado pela equipe do TreinaWeb e serve principalmente para iniciantes na linguagem. SQL é a sigla em inglês

Leia mais

A U L A 1 0 C R I A N D O V I E W S V I E W S ( V I S Õ E S )

A U L A 1 0 C R I A N D O V I E W S V I E W S ( V I S Õ E S ) BANCO DE DADOS GERENCIAL 1 A U L A 1 0 C R I A N D O V I E W S V I E W S ( V I S Õ E S ) VIEW é uma instrução SQL que retorna dados e é salva no banco de dados com um nome, ou seja, passa a ser um objeto

Leia mais

Aula 06 Sistemas Embarcados LT38C

Aula 06 Sistemas Embarcados LT38C Aula 06 Sistemas Embarcados LT38C Prof. Lucas Ricken Garcia 2017/1 Introdução a Banco de Dados Coleção de dados relacionados. Fatos conhecidos que podem ser registrados e possuem significado implícito.

Leia mais

BANCO DE DADOS. Para a criação de um banco de dados, através de scripts SQL, deve-se usar a seguinte sintaxe: CREATE DATABASE <nome_banco_de_dados>

BANCO DE DADOS. Para a criação de um banco de dados, através de scripts SQL, deve-se usar a seguinte sintaxe: CREATE DATABASE <nome_banco_de_dados> BANCO DE DADOS 1. Scripts de criação de banco de dados Para a criação de um banco de dados, através de scripts SQL, deve-se usar a seguinte sintaxe: CREATE DATABASE Onde:

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE INTRODUÇÃO A SQL

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE INTRODUÇÃO A SQL INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE INTRODUÇÃO A SQL Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com 02/06/2016 SUMÁRIO SQL DDL DML SQL (STRUCTURED

Leia mais

A U L A 9 F U N Ç Õ E S A G R E G A D A S E C Á L C U L O S

A U L A 9 F U N Ç Õ E S A G R E G A D A S E C Á L C U L O S BANCO DE DADOS GERENCIAL 1 A U L A 9 F U N Ç Õ E S A G R E G A D A S E C Á L C U L O S Funções Agregadas São funções aquelas que tomam uma coleção (um conjunto ou subconjunto) de valores como entrada,

Leia mais

Oracle Database 11g: Introdução à Linguagem SQL Novo

Oracle Database 11g: Introdução à Linguagem SQL Novo Oracle University Contact Us: 0800 891 6502 Oracle Database 11g: Introdução à Linguagem SQL Novo Duration: 5 Days What you will learn Neste curso, os alunos aprendem os conceitos de bancos de dados relacionais.

Leia mais

Utilizando o Postgres - comandos SQL para a manipulação de dados

Utilizando o Postgres - comandos SQL para a manipulação de dados Utilizando o Postgres - comandos SQL para a manipulação de dados SELECT A declaração SELECT é utilizada para selecionar os dados de um banco de dados. SELECT nome FROM clientes WHERE A cláusula WHERE é

Leia mais

BANCO DE DADOS GERENCIAL 1 A U L A 2

BANCO DE DADOS GERENCIAL 1 A U L A 2 BANCO DE DADOS GERENCIAL 1 A U L A 2 N Í V E I S D E V I S Ã O, S U B G R U P O D D L : C R I A N D O B A N C O D E D A D O S, C R I A N D O T A B E L A S, E S T R U T U R A D A T A B E L A CONCEITOS :

Leia mais

BD II (SI 587) Segurança em Banco de Dados. Josenildo Silva.

BD II (SI 587) Segurança em Banco de Dados. Josenildo Silva. BD II (SI 587) Segurança em Banco de Dados Josenildo Silva jcsilva@ifma.edu.br Nota Estes slides são baseados nos slides disponibilizados pelos autores ELMASRI e NAVATHE, para o livro Sistemas de Banco

Leia mais

saída durante o runtime Usando Functions de uma Única Linha para Personalizar Relatórios Mostrar as diferenças entre as functions SQL de uma única

saída durante o runtime Usando Functions de uma Única Linha para Personalizar Relatórios Mostrar as diferenças entre as functions SQL de uma única Tópicos do Curso: Introdução Listar os principais recursos do Banco de Dados Oracle 10g Apresentar uma visão geral de: componentes, plataforma de internet, servidor de aplicações e suite do desenvolvedor

Leia mais

Triggers(Gatilhos) Tiago Alves de Oliveira

Triggers(Gatilhos) Tiago Alves de Oliveira Triggers(Gatilhos) Tiago Alves de Oliveira tiago.alves@uemg.br Triggers (Gatilhos) Um TRIGGER ou gatilho associado a uma tabela, definido para ser disparado, respondendo a um evento em particular; Comandos

Leia mais

Sumário: 1) Trabalhando com Constraints: - NOT NULL - UNIQUE - PRIMARY KEY - FOREIGN KEY - DEFAULT

Sumário: 1) Trabalhando com Constraints: - NOT NULL - UNIQUE - PRIMARY KEY - FOREIGN KEY - DEFAULT Sumário: 1) Trabalhando com Constraints: - NOT NULL - UNIQUE - PRIMARY KEY - FOREIGN KEY - DEFAULT 2) Componentes do Select: - DISTINCT - WHERE - AND e OR - ORDER BY 2) Visão Geral - A SQL é dividida em

Leia mais

SQL Linguagem de Manipulação de Dados SQL DML SQL DML. Exemplo Modelo Relacional. Exemplo ME-R SQL DML CONTINUAÇÃO...

SQL Linguagem de Manipulação de Dados SQL DML SQL DML. Exemplo Modelo Relacional. Exemplo ME-R SQL DML CONTINUAÇÃO... Ciência da Computação GBC043 Sistemas de Banco de Dados SQL Linguagem de Manipulação de Dados Profa. Maria Camila Nardini Barioni camila.barioni@facom.ufu.br Bloco B - sala 1B137 SQL DML CONTINUAÇÃO...

Leia mais

A U L A 3 S U B G R U P O S D M L E D Q L : I N S E R I N D O E P E S Q U I S A N D O D A D O S E M U M A T A B E L A

A U L A 3 S U B G R U P O S D M L E D Q L : I N S E R I N D O E P E S Q U I S A N D O D A D O S E M U M A T A B E L A BANCO DE DADOS GERENCIAL 1 A U L A 3 S U B G R U P O S D M L E D Q L : I N S E R I N D O E P E S Q U I S A N D O D A D O S E M U M A T A B E L A CONCEITOS LINGUAGEM DE MANIPULAÇÃO DE DADOS (DML) A linguagem

Leia mais

Lista 02 Sistema de Banco de Dados CAP 241 Computação Aplicada I

Lista 02 Sistema de Banco de Dados CAP 241 Computação Aplicada I Lista 02 Sistema de Banco de Dados CAP 241 Computação Aplicada I Considere o diagrama relacional da Figura 1 e escreva os comandos SQL para executar os exercícios abaixo. Figure 1 Diagrama relacional.

Leia mais

Técni n c i as e L i L n i g n u g age g ns n p ara r Ba B nc n o d e D ados I ACCESS

Técni n c i as e L i L n i g n u g age g ns n p ara r Ba B nc n o d e D ados I ACCESS Técnicas e Linguagens para Banco de Dados I ACCESS Criando um Banco de Dados 1 2 3 4 5 6 7 8 Tipos de Relações existentes nos Bancos de Dados Relacionamentos 1 1 Um para Um : neste tipo de Relação,

Leia mais

MYSQL - PRIMEIROS COMANDOS CRIAÇÃCO DO BD E DAS TABELAS, INSERÇÃO E CONSULTA DE REGISTROS. create database [if not exists] <nome>

MYSQL - PRIMEIROS COMANDOS CRIAÇÃCO DO BD E DAS TABELAS, INSERÇÃO E CONSULTA DE REGISTROS. create database [if not exists] <nome> 1. Manuseio do banco de dados MYSQL - PRIMEIROS COMANDOS CRIAÇÃCO DO BD E DAS TABELAS, INSERÇÃO E CONSULTA DE REGISTROS As seguintes instruções manuseiam o banco de dados: cria o banco mostra os bancos

Leia mais

Exercício Aula Passada. SQL Linguagem de Manipulação de Dados. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada

Exercício Aula Passada. SQL Linguagem de Manipulação de Dados. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada Ciência da Computação GBC043 Sistemas de Banco de Dados SQL Linguagem de Manipulação de Dados Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 1 semestre de 2018 2 Escreva

Leia mais

BCD29008 Banco de dados

BCD29008 Banco de dados BCD29008 Banco de dados Linguagem SQL Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 21 de agosto de 2017

Leia mais

BANCO DE DADOS FACSUL 2017 TECNOLOGIA DE REDE DE COMPUTADORES

BANCO DE DADOS FACSUL 2017 TECNOLOGIA DE REDE DE COMPUTADORES BANCO DE DADOS FACSUL 2017 TECNOLOGIA DE REDE DE COMPUTADORES SEGURANÇA Uma das maiores preocupações em computação tem sido segurança da informação Nos dias atuais, com o uso da internet os sistemas tornam-se

Leia mais

ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL

ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL Objetivo: No curso Oracle 11G Introdução ao Oracle, SQL, PL/SQL será abordado desde a introdução da tecnologia do banco de dados em questão como todos os conceitos

Leia mais

Banco de dados. Conteúdo: DDL Prof. Patrícia Lucas

Banco de dados. Conteúdo: DDL Prof. Patrícia Lucas Banco de dados Conteúdo: DDL Prof. Patrícia Lucas O mysql MySQL Workbench é uma ferramenta de design de banco de dados visual que integra o desenvolvimento SQL, administração, design de banco de dados,

Leia mais

Rápida revisão do Modelo Relacional

Rápida revisão do Modelo Relacional Rápida revisão do Modelo Relacional Conceito de relação Tuplas e atributos Rápida revisão do Modelo Relacional Regras de integridade Entidade: Deve existir uma chave primária com valor único e não-nulo.

Leia mais

PSI Linguagem de Definição de dados. Módulo 15

PSI Linguagem de Definição de dados. Módulo 15 PSI Linguagem de Definição de dados Módulo 15 Objetivos de aprendizagem No final deste módulo os alunos devem ter adquirido conhecimentos, procedimentos e atitudes que lhe permitam: Criação, alteração

Leia mais

Banco de Dados II. Transações (Oracle) Segurança: Introdução; Controle de Acesso; Criptografia; Recursos de SQL.

Banco de Dados II. Transações (Oracle) Segurança: Introdução; Controle de Acesso; Criptografia; Recursos de SQL. Banco de Dados II Transações (Oracle) Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com http://www.bolinhabolinha.com Apresentação Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Ementa Gerenciamento de

Leia mais

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

AULA 2 INTERAÇÃO COM O BANCO DE DADOS AULA 2 INTERAÇÃO COM O BANCO DE DADOS BANCO DE DADOS POSTGRESQL O PostgreSQL é um sistema gerenciador de banco de dados dos mais robustos e avançados do mundo. Seu código é aberto e é totalmente gratuito,

Leia mais

Modelo Entidade-Relacionamento (E-R)

Modelo Entidade-Relacionamento (E-R) Modelo Entidade-Relacionamento (E-R) composto n lote n n n contrato_compra_venda n possui proprietário possui n associado cadastro n banco faz fronteira pertence n ruas n quadras n financiado empréstimo

Leia mais

Introdução em Banco de Dados

Introdução em Banco de Dados Introdução em Banco de Dados Aula07 ComandosSQLeMySQL Prof: Franciel MySQL é um banco de dados cliente servidor gratuito É simples, tem alto desempenho, é disponível para várias plataformas e é robusto

Leia mais

Introdução à linguagem SQL

Introdução à linguagem SQL Introdução à linguagem SQL 1 Histórico A linguagem de consulta estruturada (SQL - Structured Query Language) foi desenvolvida pela empresa IBM, no final dos anos 70. O primeiro banco de dados comercial

Leia mais

SQL. Prof. Roger Cristhian Gomes

SQL. Prof. Roger Cristhian Gomes SQL Prof. Roger Cristhian Gomes SQL SQL - Structured Query Language Linguagem de acesso e manipulação de sistemas de base de dados computacionais que segue o padrão ANSI Existem diferenças entre as versões

Leia mais

Stored Procedures e Triggers

Stored Procedures e Triggers e Triggers Professor: Ricardo Luis dos Santos IFSUL 2015 Agenda Rotinas Armazenadas Stored Procedures Exemplos Triggers Exemplos Exercícios 2 Rotinas Armazendas Rotinas Armazenadas são um conjunto de comandos

Leia mais

Curso de Banco de Dados. Prof. Rone Ilídio

Curso de Banco de Dados. Prof. Rone Ilídio Curso de Banco de Dados Prof. Rone Ilídio Introdução BD 1 BD 2 SQL BD 3 Dados Aplicação Sistemas de Gerência de Banco de Dados -SGBD Introdução Aplicação que controla os dados Drives ODBC, BDE, ect SQL

Leia mais

Linguagem SQL Restrições, Triggers e Views

Linguagem SQL Restrições, Triggers e Views FACULDADE INGÁ Unidade de Ensino Superior Ingá Ltda Ciência da Computação Linguagem SQL Restrições, Triggers e Views Prof. Erinaldo Sanches Nascimento Objetivos Especificar restrições mais gerais sobre

Leia mais

Introdução 20 Diagramas de fluxos de dados 20 O processo de elaboração de DFD 22 Regras práticas para a elaboração de DFD 24 Dicionário de dados 26

Introdução 20 Diagramas de fluxos de dados 20 O processo de elaboração de DFD 22 Regras práticas para a elaboração de DFD 24 Dicionário de dados 26 ÍNDICE MÓDULO 1 ANÁLISE DE SISTEMAS 9 1.1 SISTEMAS DE INFORMAÇÃO 10 Sistema conceito e exemplos 10 Dados e informação 11 Sistema de informação conceito e componentes 12 Sistema de informação e sistemas

Leia mais

SQL BÁSICO. Luiz Antônio Vivacqua Corrêa Meyer

SQL BÁSICO. Luiz Antônio Vivacqua Corrêa Meyer SQL BÁSICO Luiz Antônio Vivacqua Corrêa Meyer SQL (Structured Query Language) Início na década de 70 pela IBM com o nome de SEQUEL. Em 1980 o produto mudou seu nome para SQL. American National Standards

Leia mais

Fundamentos de SQL. Curso: Técnico em Redes de Computadores Disciplina: Tecnologias e Linguagem de Banco de dados Professor: Rodrigo da Rocha

Fundamentos de SQL. Curso: Técnico em Redes de Computadores Disciplina: Tecnologias e Linguagem de Banco de dados Professor: Rodrigo da Rocha Fundamentos de SQL Curso: Técnico em Redes de Computadores Disciplina: Tecnologias e Linguagem de Banco de dados Professor: Rodrigo da Rocha SQL - Introdução SQL-Structured Query Language (Linguagem de

Leia mais

Comandos de Manipulação

Comandos de Manipulação SQL - Avançado Inserção de dados; Atualização de dados; Remoção de dados; Projeção; Seleção; Junções; Operadores: aritméticos, de comparação,de agregação e lógicos; Outros comandos relacionados. SQL SQL

Leia mais

Treinamento PostgreSQL - Aula 02

Treinamento PostgreSQL - Aula 02 Treinamento PostgreSQL - Aula 02 Eduardo Ferreira dos Santos SparkGroup Treinamento e Capacitação em Tecnologia eduardo.edusantos@gmail.com eduardosan.com 28 de Maio de 2013 Eduardo Ferreira dos Santos

Leia mais

Views. uma view é uma tabela virtual. não existe fisicamente na BD. é definida à custa de outras tabelas ou views. CREATE VIEW <nome> AS <query>;

Views. uma view é uma tabela virtual. não existe fisicamente na BD. é definida à custa de outras tabelas ou views. CREATE VIEW <nome> AS <query>; Views uma view é uma tabela virtual. não existe fisicamente na BD. é definida à custa de outras tabelas ou views. sintaxe: CREATE VIEW AS ; 1 Exemplo Criar uma view que dá o nome, ano e duração

Leia mais

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

AULA 2 INTERAÇÃO COM O BANCO DE DADOS AULA 2 INTERAÇÃO COM O BANCO DE DADOS BANCO DE DADOS POSTGRESQL O PostgreSQL é um sistema gerenciador de banco de dados dos mais robustos e avançados do mundo. Seu código é aberto e é totalmente gratuito,

Leia mais

Para criarmos um banco de dados no MySql, utilizamos à instrução:

Para criarmos um banco de dados no MySql, utilizamos à instrução: Databases Os objetos que fazem parte de um sistema de banco de dados são criados dentro de um database, uma estrutura lógica responsável por manter a estrutura de tabelas com seus dados. Para criarmos

Leia mais

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

Introdução à Banco de Dados. Nathalia Sautchuk Patrício Introdução à Banco de Dados Nathalia Sautchuk Patrício Histórico Início da computação: dados guardados em arquivos de texto Problemas nesse modelo: redundância não-controlada de dados aplicações devem

Leia mais

Escola Secundária de Albufeira. Comandos MySQL. (Páginas Web Dinâmicas: PHP e MySQL) Carlos Nunes

Escola Secundária de Albufeira. Comandos MySQL. (Páginas Web Dinâmicas: PHP e MySQL) Carlos Nunes Escola Secundária de Albufeira Comandos MySQL (Páginas Web Dinâmicas: PHP e MySQL) (csmnunes@gmail.com) 2009/2010 Criar Base de Dados CREATE DATABASE basededados; Apagar Base de Dados DROP DATABASE basededados;

Leia mais

A U L A 8 C O N S U L T A S U N I N D O D U A S O U M A I S T A B E L A S P A R T E 2

A U L A 8 C O N S U L T A S U N I N D O D U A S O U M A I S T A B E L A S P A R T E 2 BANCO DE DADOS GERENCIAL 1 A U L A 8 C O N S U L T A S U N I N D O D U A S O U M A I S T A B E L A S P A R T E 2 Na aula passada, uma situação muito comum é, ao construirmos uma consulta (select), termos

Leia mais

FACULDADE INGÁ Unidade de Ensino Superior Ingá Ltda Ciência da Computação TRIGGERS. Prof. Erinaldo Sanches Nascimento

FACULDADE INGÁ Unidade de Ensino Superior Ingá Ltda Ciência da Computação TRIGGERS. Prof. Erinaldo Sanches Nascimento FACULDADE INGÁ Unidade de Ensino Superior Ingá Ltda Ciência da Computação TRIGGERS Prof. Erinaldo Sanches Nascimento Objetivos Especificar restrições mais gerais sobre o banco de dados. Especificar regras

Leia mais

BANCO DE DADOS SQL. Aprendendo a manipular dados. Banco de dados utilizado: PostgreSQL.

BANCO DE DADOS SQL. Aprendendo a manipular dados. Banco de dados utilizado: PostgreSQL. BANCO DE DADOS SQL Aprendendo a manipular dados. Banco de dados utilizado: PostgreSQL. CRIANDO O BANCO DE DADOS CRIANDO A TABELA CIDADE create table CIDADE ( IDCIDADE SERIAL not null, DSCCIDADE Varchar(100)

Leia mais

Programação em Banco de dados

Programação em Banco de dados Programação em Banco de dados CREATE DATABASE A03; GO USE A03; GO -- Cria a tabela para armazenar PRODUTO CREATE TABLE PRODUTO( CDPRODUTO INT NOT NULL, NOMEPRODUTO VARCHAR(255), CONSTRAINT PK_PRODUTO PRIMARY

Leia mais

Laboratório de Banco de Dados II Aula 04. Prof. Érick de Souza Carvalho

Laboratório de Banco de Dados II Aula 04. Prof. Érick de Souza Carvalho Laboratório de Banco de Dados II Aula 04 Prof. Érick de Souza Carvalho 1 SQL (Structured Query Language ) Prof. Érick de Souza Carvalho 2 SQL Structured Query Language - Introdução É uma Linguagem para

Leia mais

Instituto Federal de Educação, Ciência e Tecnologia de São Paulo

Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Segurança em Sistemas de Banco de Dados César Alberto da Silva Presidente Epitácio, 18 de Setembro de 2013 Agenda Por que proteger os dados?

Leia mais

Oracle Database 10g: Fundamentos de SQL e PL/SQL

Oracle Database 10g: Fundamentos de SQL e PL/SQL Oracle University Contact Us: 0-800-167225 Oracle Database 10g: Fundamentos de SQL e PL/SQL Duration: 5 Dias O que é que gostaria de aprender Conheça os fundamentos de SQL e PL/SQL usando o SQL Developer

Leia mais

SQL E MYSQL - COMANDOS BÁSICOS

SQL E MYSQL - COMANDOS BÁSICOS SQL E MYSQL - COMANDOS BÁSICOS Criar uma base de dados: CREATE DATABASE bdteste; Informação sobre tabelas DESCRIBE nomedatabela; Acessar base de dados: USE bdteste; COMANDOS GERAIS SHOW DATABASES; USE

Leia mais

José Antônio da Cunha

José Antônio da Cunha José Antônio da Cunha CEFET-RN Natal, 10 de maio de 2013 Auditando operações DML com OUPUT Imagine o seguinte cenário: você possui uma tabela muito importante em seu banco de dados e gostaria de implantar

Leia mais

Bases de Dados. DDL Data Definition Language

Bases de Dados. DDL Data Definition Language Bases de Dados DDL Data Definition Language SQL SQL = Structured Query Language Foi originalmente criada pela IBM nos anos 70 como parte de um protótipo de sistema relacional Posteriormente foi implementada

Leia mais

Revisão Banco de Dados

Revisão Banco de Dados Revisão Banco de Dados Carlos Henrique - Aula 2 Descoberta de Conhecimento e Mineração de Dados Tópicos Abordados Conceitos Básicos Características Arquitetura Lógica Usuários Finais Modelo E/R Linguagens

Leia mais

SQL: Vistas, Indices, Autorização, Restrições

SQL: Vistas, Indices, Autorização, Restrições SQL: Vistas, Indices, Autorização, Restrições Fernando Lobo Base de Dados, Universidade do Algarve 1 / 20 Vistas Uma vista (view em inglês) é uma tabela virtual. Não existe fisicamente na BD. É definida

Leia mais

Roteiro. SQL Linguagem de Manipulação de Dados. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada

Roteiro. SQL Linguagem de Manipulação de Dados. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada 1 Ciência da Computação GBC043 Sistemas de Banco de Dados SQL Linguagem de Manipulação de Dados Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 Roteiro s aulas passadas SQL

Leia mais

Uma breve introdução a Bases de dados

Uma breve introdução a Bases de dados Uma breve introdução a Bases de dados Bases de dados Uma base de dados é só informação organizada de forma a facilitar a sua consulta. Todos vocês já tiveram algum contacto com bases de dados. Se trabalharem

Leia mais

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO Disciplina: Banco de Dados I Professor: Prof. Me. Everton

Leia mais

Módulo 6: Linguagem de Programação IV 6.2. Bases de Dados Introdução à Linguagem SQL

Módulo 6: Linguagem de Programação IV 6.2. Bases de Dados Introdução à Linguagem SQL Curso Profissional de Técnico de Multimédia 12ºAno Disciplina: Sistemas de Informação Módulo 6: Linguagem de Programação IV 6.2. Bases de Dados 6.2.3. Introdução à Linguagem SQL Prof. Micael Alves Bases

Leia mais

SIG: Sistemas de Informações Geográficas. Adaptado de Gilberto Câmara

SIG: Sistemas de Informações Geográficas. Adaptado de Gilberto Câmara SIG: Sistemas de Informações Geográficas Adaptado de Gilberto Câmara Banco de Dados Geográficos Comandos SQL Adaptado de Karine Reis Ferreira karine@dpi.inpe.br Gilberto Câmara gilberto@dpi.inpe.br Gilberto

Leia mais

Atualização e Inserção de Dados. SQL Avançado. Pedro F. Carvalho OCP Oracle g

Atualização e Inserção de Dados. SQL Avançado. Pedro F. Carvalho OCP Oracle g Pedro F. Carvalho OCP Oracle 2008.2 10g SQL Avançado Atualização e Inserção de Dados Comando INSERT Sumário Inclusão simples, inclusão de dados com SELECT Comando UPDATE Alteração simples, alteração usando

Leia mais

SQL Básica DDL. Prof. Marcos A. Schreiner. 21 de outubro de Curso de Licenciatura em Computação

SQL Básica DDL. Prof. Marcos A. Schreiner. 21 de outubro de Curso de Licenciatura em Computação SQL Básica DDL Prof. Marcos A. Schreiner Curso de Licenciatura em Computação 21 de outubro de 2015 Prof. Marcos A. Schreiner (UFPR) 21 de outubro de 2015 1 / 28 1 Introdução 2 SQL DDL CREATE Criar Banco

Leia mais

Importar e Exportar Dados

Importar e Exportar Dados Importar e Exportar Dados Administração de Base de Dados OBJECTIVOS: Definir comandos e formatos Definir restrições (constraints) DEFINIÇÃO DO ESQUEMA DA BASE DE DADOS O esquema da BD e composto pelas

Leia mais

Definição do esquema da base de dados. o esquema da BD é composto pelas definições de todas as tabelas da BD.

Definição do esquema da base de dados. o esquema da BD é composto pelas definições de todas as tabelas da BD. Definição do esquema da base de dados o esquema da BD é composto pelas definições de todas as tabelas da BD. existem outros elementos (views, índices, triggers) que também fazem parte do esquema e que

Leia mais

Treinamento em SQL. Índice

Treinamento em SQL. Índice Nível: Básico Horas: 4 Treinamento em SQL Índice Introdução...2 O que são Banco de Dados...2 Bancos de Dados Relacionais...2 Estudo de Caso: PostgreSQL MySQL...2 O que é SQL...3 Como utilizar...3 Criando

Leia mais

'%'! $!0" $ 8 ' %%! % '! $ $$% + ' %!%$/)!'4!+,"/)!)+,/)% *! +,"0''% * %$!*!$$ #!"%&%'%'%$! "94(# ' %'$%$$$%0%$%' *!% %%%'!**% > %% %%!31?

'%'! $!0 $ 8 ' %%! % '! $ $$% + ' %!%$/)!'4!+,/)!)+,/)% *! +,0''% * %$!*!$$ #!%&%'%'%$! 94(# ' %'$%$$$%0%$%' *!% %%%'!**% > %% %%!31? MODELAGEM FÍSICA Capítulo 3! " # $ $!%%%& '$! $% $$%"%' ) ' *'!%'!$ $ $ $% +, %#!!" '$*'#%! $ $$%" % '$%!!% $% * % $ *-! %$% $!* '% $!$$.!'% & $%!% $ $ ' %/!$ 0 $*' $% *0 )#%!$0% 1&$$$%+#!*22,"$% )'%$$%%&

Leia mais