1 LINGUAGEM SQL SQL Server 2008 Comandos iniciais
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. Em 1986 o American National Standard Institute (ANSI), publicou um padrão SQL. A SQL estabeleceu-se como linguagem padrão de Banco de Dados Relacional. 2
SQL - STRUCTURED QUERY LANGUAGE SQL apresenta uma série de comandos que permitem a definição dos dados, chamada de DDL (Data Definition Language), composta entre outros pelos comandos Create, que é destinado a criação do Banco de Dados, das Tabelas que o compõe, além das relações existentes entre as tabelas. Como exemplo de comandos da classe DDL temos os comandos 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 ou mais tabelas de maneira simultânea. Como exemplo de comandos da classe DML temos os comandos Select, Insert, Update e Delete. 3
CRIAÇÃO E DESTRUIÇÃO DE TABELAS Create database Comando utilizado para criar um banco de dados. Sintaxe: create database nome_banco; Exemplo: create database folhaescola; O comando acima cria o banco de dados folhaescola. 4
CRIAÇÃO E DESTRUIÇÃO DE TABELAS Create table Sintaxe: create table nome_tabela (campo tipo_de_dado not null, campo tipo_de_dado, campo tipo_de_dado, primary key (nome_campo)) A opção primary key é utilizada para definir um campo como chave primária da tabela. Isso significa que essa chave não pode se repetir nunca na tabela, ou seja, que a chave de ser única. Assim, garantindo a integridade do banco de dados, não permitindo a duplicidade de informação. 5
CRIAÇÃO E DESTRUIÇÃO DE TABELAS Exemplo: create table aluno( id_aluno int not null, nome varchar(40) not null, endereco varchar(40) null, cidade varchar(20) null, cep char(08) null, uf char(02) null, responsavel varchar(40), primary key (cod_cli)); 6
CRIAÇÃO E DESTRUIÇÃO DE TABELAS O exemplo anterior cria um tabela com nome Aluno, com os seguintes campos: id_aluno, nome, endereço, cidade, cep, uf, responsavel. A chave primária dessa tabela é o campo id_aluno. Os tipos de dados escolhidos foram: varchar para campos de texto e integer para campos numéricos. Observa-se que o campo id_aluno e nome estão setados para não aceitar valores nulos (not null), essa opção é importante nesse caso, pois trata-se de um campo chave primária, e outro que não queremos que fique nulo. 7
CRIAÇÃO E DESTRUIÇÃO DE TABELAS Para excluirmos uma tabela existente devemos usar o comando DROP TABLE. Sintaxe: drop table <nome_tabela>; onde: <nome_tabela> dever ser substituído pelo nome da tabela a ser excluída. Exemplo: drop table aluno; 8
ATUALIZAÇÃO E ALTERAÇÃO Update Comando utilizado para atualizar um ou mais campos de um registro na tabela. Sintaxe: update nome_tabela set nome_coluna=novo_valor where condição Exemplo: update pagto set dt_pagto=null where id_pagto in (271,472,493); O exemplo acima atualiza o campo da tabela dt_pagto para null, para os registros com valores definidos entre os parênteses na cláusula where. 9
ATUALIZAÇÃO E ALTERAÇÃO Alter table Altera ou atualiza uma informação na tabela. Quando é criado um campo novo, esse terá seu conteúdo com valor nulo (NULL). Sintaxe: Alter table nome_tabela drop nome_coluna add nome_coluna tipo rename nome_coluna nome_nova_coluna modify nome_coluna tipo add primary/foreign key coluna references tabela(campo) 10
ATUALIZAÇÃO E ALTERAÇÃO Alter table Exemplo: Alter table cadastroaluno add email varchar(30); O comando acima cria o campo email com o tipo varchar, na tabela cadastroaluno. Lembrando que o conteúdo desse campo será NULL para todos os registros da tabela. 11
INSERINDO VALORES (REGISTROS) Insert into Insere valores em uma tabela. Sintaxe: insert into nome_tabela (campos) values (valores) Exemplo: insert into Aluno values (015,'Ricardo Teixeira','Av. São Borja',São Leopoldo,88746479312, RS, 'Márcia Alves Teixeira'); O exemplo mostra a inserção na tabela Aluno dos valores determinados na cláusula values. Como queremos inserir valores em todos os campos, não há necessidade de informar os nomes dos campos, mas isso implica em informar valores para todos os campos da tabela. Caso não ocorra, ao executar a query, irá informar erro na tentativa de inserir os dados. 12
MODIFICANDO E EXCLUINDO REGISTROS Modificando um Registro UPDATE <nome_tabela> SET {<nome_coluna> = <expressão>} WHERE <condição_de_seleção>; Exemplo: Alterar a cidade dos clientes para São Leopoldo. UPDATE aluno SET cidade = São Leopoldo WHERE id_aluno = 1; 13
MODIFICANDO E EXCLUINDO REGISTROS Excluindo Registros DELETE FROM <nome_tabela> WHERE <condição_de_seleção>; Exemplo: Excluir o cliente com código 1. DELETE FROM aluno WHERE cod_cli = 1; 14