Prévia do material em texto
Structured Query Language SQL Aula 6 Prof. Martin Morães Organização da Disciplina � Os Banco de Dados � Modelo Entidade-Relacionamento � Modelo Conceitual � Projeto Lógico � SQL - Implementando a Base de Dados � SQL - Trabalhando com os dados Organização da Aula Linguagem de Consulta Estruturada � SQL – DDL • Data Definition Language � SQL – DML • Data Manipulation Language Contextualização Fazes de um Projeto de DB Projeto • Modelo Conceitual • Projeto Lógico • Projeto Físico Instrumentalização Ferramentas Implementando - MySQL • Ferramenta • MySQL WorkBench • Manual • 13.1 Data Definition Statements Aplicação SQL DDL • CREAT • ALTER • DROP SQL - DDL CREAT � DATABASE x SCHEMAS � TABLE � Etc... CREATE – DDL - DB Sintaxe CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name Exemplo CREATE DATABASE MINHADB; CREATE– DDL - TABLE CREATE [TEMPORARY] TABLE [IF NOT EXISTS] NOME_TABELA (CREATE_DEFINITION,...) CREATE - DDL - TABLE Definições de colunas: � PRIMARY KEY � UNIQUE � FOREIGN KEY � NOT NULL | NULL � AUTO_INCREMENT � Ouros... CREATE - DDL - TABLE CREAT TABLE - Exemplo CREATE TABLE IF NOT EXISTS MINHADB.USUARIO ( IDUSUARIO INT NOT NULL AUTO_INCREMENT , NOME VARCHAR(80), EMAIL VARCHAR(45), DTCADASTRO DATETIME, PRIMARY KEY (IDUSUARIO) ) CREATE - DDL - TABLE CREAT TABLE - Exemplo CREATE TABLE IF NOT EXISTS MYDB.USUARIO ( IDUSUARIO INT NOT NULL PRIMARY KEY AUTO_INCREMENT , NOME VARCHAR(80), EMAIL VARCHAR(45), DTCADASTRO DATETIME) ALTER– DDL - DB ALTER ALTER {DATABASE | SCHEMA} [db_name] alter_specification alter_specification: CHARACTER SET [=] COLLATE [=] ALTER– DDL - TABLE ALTER � TABLE • Adicionar - ADD • Alterar - CHANGE • Remover - DROP • Renomear - RENAME ALTER– DDL - TABLE Sintaxe ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition Exemplo ALTER TABLE USUARIO ADD SENHA VARCHAR(20); ALTER– DDL - TABLE Sintaxe ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] PRIMARY KEY (col_name,...) Exemplo ALTER TABLE USUARIO ADD PRIMARY KEY (IDUSUARIO); ALTER– DDL - TABLE Sintaxe ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY] Exemplo ALTER TABLE USUARIO ADD UNIQUE(EMAIL); ALTER– DDL - TABLE Sintaxe ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] Exemplo ALTER TABLE MENSAGEM ADD FOREIGN KEY (usuario_idusuario) REFERENCES usuario(idusuario); ALTER– DDL - TABLE Sintaxe ALTER TABLE tbl_name CHANGE [COLUMN] old_col_name new_col_name column_definition Exemplo ALTER TABLE MENSAGEM CHANGE EMAIL E_MAIL varchar(40); ALTER– DDL - TABLE Sintaxe ALTER TABLE tbl_name | DROP [COLUMN] col_name | ROP PRIMARY KEY | DROP FOREIGN KEY fk_symbol Exemplo ALTER TABLE MENSAGEM DROP E_MAIL; ALTER– DDL - TABLE Sintaxe ALTER TABLE tbl_name RENAME TO new_tbl_name Exemplo ALTER TABLE MENSAGEM RENAME TO MENSAGEM1 ALTER– DDL - TABLE DROP � DATABASE � TABLE � Outros DROP – DDL - TABLE Sintaxe DROP {DATABASE | SCHEMA} [IF EXISTS] db_name Exemplo DROP DATABASE Redemensagens; DROP – DDL - TABLE Sintaxe DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name Exemplo DROP TABLE USUARIO; SQL DML • INSERT • UPDATE • DELETE INSERT – DML Sintaxe INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...) Exemplo insert into usuario (nome, email) values ('a', 'a@a'); UPDATE – DML Sintaxe UPDATE table_name SET col1=value1, col2=value2,… WHERE some_column=some_value; Exemplo UPDATE usuario SET nome='aa' WHERE idusuario = 1; DELETE – DML Sintaxe DELETE FROM table_name WHERE some_column=some_value; Exemplo DELETE FROM usuario WHERE idusuario = 1; Síntese SQL DDL • CREAT • ALTER • DROP SQL DML • INSERT • UPDATE • DELETE