Programao para Internet Aula 11 SQL Introduo a

  • Slides: 25
Download presentation
Programação para Internet Aula 11 SQL (Introdução a linguagem, comandos de modificação: Create, Drop,

Programação para Internet Aula 11 SQL (Introdução a linguagem, comandos de modificação: Create, Drop, Alter, Insert, Delete, Update)

SQL - Structured Query Language • Quando os Bancos de Dados Relacionais estavam sendo

SQL - Structured Query Language • Quando os Bancos de Dados Relacionais estavam sendo desenvolvidos, foram criadas linguagens destinadas à sua manipulação. • O Departamento de Pesquisas da IBM, desenvolveu a SQL como forma de interface para o sistema de BD relacional denominado SYSTEM R, início dos anos 70. • SQL apresenta uma série de comandos que permitem a definição dos dados, chamada de DDL (Data Definition Language)

SQL - Structured Query Language • Exemplo de comandos da classe DDL: – Create,

SQL - Structured Query Language • Exemplo de comandos da classe DDL: – Create, Alter e Drop. • Os comandos da série DML (Data Manipulation Language), destinados a consultas, inserções, exclusões e alterações em um ou mais registros de uma tabela de maneira simultânea. • Exemplos de comandos da classe DML: – Select, Insert, Update e Delete.

SQL - Structured Query Language • Uma característica muito importante disponível em SQL é

SQL - Structured Query Language • Uma característica muito importante disponível em SQL é sua capacidade de construção de visões; • Visões - visualização dos dados na forma de listagens independente das tabelas e organização lógica dos dados.

SQL - Structured Query Language • Outra característica interessante na linguagem SQL é a

SQL - Structured Query Language • Outra característica interessante na linguagem SQL é a capacidade que dispomos de cancelar uma série de atualizações e gravações, depois de termos iniciado uma seqüência. • Os comandos Commit e Rollback são responsáveis por estas facilidades.

SQL - Structured Query Language • Devemos notar que a linguagem SQL consegue implementar

SQL - Structured Query Language • Devemos notar que a linguagem SQL consegue implementar estas soluções, somente pelo fato de estar baseada em Banco de Dados, que garantem por si mesmo a integridade das relações existentes entre as tabelas e seus índices.

Comandos de Modificação e Criação • Comando create database: Este comando permite a criação

Comandos de Modificação e Criação • Comando create database: Este comando permite a criação do banco de dados. • Sintaxe: CREATE DATABASE <Nome_banco_de_dados> • Exemplo: CREATE DATABASE FGFSQL

Comandos de Modificação e Criação • Comando Create table: Este comando permite a criação

Comandos de Modificação e Criação • Comando Create table: Este comando permite a criação de tabelas no banco de dados. • Sintaxe: CREATE TABLE < nome_tabela > ( nome_atributo 1 < tipo > [ NOT NULL ], nome_atributo 2 < tipo > [ NOT NULL ], . . . nome_atributo. N < tipo > [ NOT NULL ] )

Create table sintaxe (Cont) • onde: – nome_tabela: indica o nome da tabela a

Create table sintaxe (Cont) • onde: – nome_tabela: indica o nome da tabela a ser criada. – nome_atributo: indica o nome do campo a ser criado na tabela. – tipo: indica a definição do tipo do atributo (int, smallint, tinyint , char ou varchar (n), float, real, money, smallmoney, datetime).

Create (Exemplo) CREATE TABLE Cliente( Cod. Cliente int NOT NULL, Nome varchar(50), CPF varchar(11)

Create (Exemplo) CREATE TABLE Cliente( Cod. Cliente int NOT NULL, Nome varchar(50), CPF varchar(11) NULL, Data. Cadastro datetime NOT NULL DEFAULT (getdate()), Pais varchar(20) DEFAULT ('Brasil')) Obs. : O comando DEFAULT define o valor padrão do campo.

Create (Exemplo) • create table Produto ( Cod. Produto int NOT NULL IDENTITY, Nome

Create (Exemplo) • create table Produto ( Cod. Produto int NOT NULL IDENTITY, Nome varchar(60), Preco money) • Propriedade IDENTITY – coluna com valor único que é gerado automaticamente pelo sistema; • Somente uma coluna pode ter essa propriedade.

Create (Exemplo) • create table Fornecedor ( Cod. Fornecedor int not null primary key,

Create (Exemplo) • create table Fornecedor ( Cod. Fornecedor int not null primary key, Nome varchar(50) null, Endereco varchar(50) null, Telefone varchar(20) null ) • primary key – define o campo como chave primária da tabela.

Create (Exemplo) • create table Produto. Fornecedor (Cod. Produto int, Cod. Fornecedor int, primary

Create (Exemplo) • create table Produto. Fornecedor (Cod. Produto int, Cod. Fornecedor int, primary key (Cod. Produto, Cod. Fornecedor) ) • Define os dois campos (Cod. Produto, Cod. Fornecedor) como chave primária da tabela.

Create (Exemplo) • create table Produto. Fornecedor (Cod. Produto int foreign key references Produto,

Create (Exemplo) • create table Produto. Fornecedor (Cod. Produto int foreign key references Produto, Cod. Fornecedor int foreign key references Fornecedor, primary key (Cod. Produto, Cod. Fornecedor)) • foreign key references – Cria uma referencia de um campo com a chave primaria de outra tabela.

Create (Exemplo) • CREATE TABLE Departamento( Cod. Departamento int NOT NULL primary key, Nome

Create (Exemplo) • CREATE TABLE Departamento( Cod. Departamento int NOT NULL primary key, Nome varchar(50), Orcamento money )

Create (Exemplo) • CREATE TABLE Funcionario ( Cod. Funcionario int primary key, Nome varchar(50),

Create (Exemplo) • CREATE TABLE Funcionario ( Cod. Funcionario int primary key, Nome varchar(50), Cod. Departamento int foreign key references Departamento, Gerente int foreign key references Funcionario, Cod. Cargo int, Ramal int Null, Salario money, Data. Admissao datetime, Data. Cadastro datetime NOT NULL DEFAULT (getdate()), Sexo char(1) )

Comandos de Modificação e Criação • Comando Drop: Este comando elimina a definição da

Comandos de Modificação e Criação • Comando Drop: Este comando elimina a definição da tabela, seus dados e referências. • Sintaxe: DROP TABLE <nome_tabela>; • Ex: DROP TABLE EMP;

Comandos de Modificação e Criação • Comando Alter: Este comando permite inserir/eliminar atributos nas

Comandos de Modificação e Criação • Comando Alter: Este comando permite inserir/eliminar atributos nas tabelas já existentes. • Sintaxe: • ALTER TABLE <nome_tabela> ALTER COLUMN nome_coluna <novo_tipo_de_dados> | ADD <nome_coluna> <dados_coluna>

ALTER TABLE (Exemplo) 1. alter table Cliente add ender varchar(50) 2. alter table Cliente

ALTER TABLE (Exemplo) 1. alter table Cliente add ender varchar(50) 2. alter table Cliente alter column ender varchar (25) • Obs. : Para renomear uma coluna, usa-se o procedimento sp_rename: • sp_rename 'Cliente. ender', Endereco

Insert • Insere uma linha ou conjunto de linhas em uma tabela • Sintaxe:

Insert • Insere uma linha ou conjunto de linhas em uma tabela • Sintaxe: INSERT INTO <nome_tabela> [(colunas)] VALUE (valores) • Exemplo: insert into Funcionario (Cod. Funcionario, Nome, Sexo, Salario, Data. Admissao) values (2, 'Segundo Funcionário', 'F', 4360. 00, '01/01/1996')

Insert (Exemplo) • insert into Funcionario values (1, 'Primeiro Funcionário', 1, 23, 234. 23,

Insert (Exemplo) • insert into Funcionario values (1, 'Primeiro Funcionário', 1, 23, 234. 23, '01/01/1998', 'M') • insert into Funcionario (Cod. Funcionario, Nome, Cod. Departamento, Sexo, Salario, Data. Admissao, Ramal) values (3, 'Terceiro Funcionário', 1, 'F', 1500. 00, '12/30/1995', 122) • insert into Copia. Funcionario select * from Funcionario

Delete • Exclui permanentemente uma ou mais linhas de uma tabela, baseado em alguma

Delete • Exclui permanentemente uma ou mais linhas de uma tabela, baseado em alguma condição. • Sintaxe DELETE FROM <nome_tabela> WHERE <condição> • Exemplo: delete from Funcionario where Cod. Funcionario = 1

Remover todas as linhas da tabela • Usar um comando DELETE sem a condição

Remover todas as linhas da tabela • Usar um comando DELETE sem a condição WHERE. • Exemplo: delete from Cliente • Outra opção é o comando TRUNCATE TABLE, que quase sempre é mais rápido que o DELETE, especialmente em tabelas grandes. • Exemplo: truncate table Cliente

Update • Atualiza os dados de uma tabela. • update funcionario set codcargo =

Update • Atualiza os dados de uma tabela. • update funcionario set codcargo = 1 where codfuncionario = 1 • update funcionario set sexo = ‘F’ where sexo = ‘I’ • update Cliente set CPF = ‘ 994455’, Nome = ‘Fernanda’ where CPF = ‘ 3456’ or CPF is null.

 • Bibliografia HEUSER Carlos A. , Projeto de Banco de Dados, Ed. Sagra&Luzzatto,

• Bibliografia HEUSER Carlos A. , Projeto de Banco de Dados, Ed. Sagra&Luzzatto, 4ª Edição.