Vous êtes sur la page 1sur 20

Banc o de dados SQL Ser ver

O SQL Server da Microsoft inaugura a entrada da empresa no mercado de


banco de dados relacionais dominado por empresas como Oracle e IBM.
A Microsoft apresenta seu banco de dados explorando bastante a arqui-
tetura Cliente/Servidor, que o Oracle tambm implementa de forma bastan-
te madura.
A arquitetura Cliente/Servidor facilita o desenvolvimento e a distribui-
o de aplicativos, reduz consideravelmente o trfego de rede, pois retorna
ao usurio apenas os dados solicitados, alm de garantir a integridade dos
dados que fcam centralizados no servidor SQL Server.
Um sistema de banco de dados Cliente/Servidor composto por dois
componentes:
programas que proveem uma interface para que os usurios (Client)
acessem os dados;
a estrutura de banco de dados para gerenciar e armazenar dados em
um servidor.
Server
APPLICATION
4
Server
DATABASE
3
2
5
CLIENT
1
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
174
Banco de dados SQL Server
O SQL Server um sistema de gerenciamento de banco de dados rela-
cional (Relacional Database Management System RDBMS) com arquitetura
Cliente/Servidor, destinado a suportar aplicaes utilizando a linguagem de
consulta estruturada Transact-SQL (Strutured Query Language) para enviar
solicitaes entre o servidor SQL Server e os clientes.
A linguagem T-SQL
Da mesma forma que a Oracle, a Microsoft tambm se deparou com os
problemas de falta de recursos tcnicos da linguagem SQL ANSI, para especi-
fcao de cdigo de programao mais denso e tambm para continuidade
de integrao do banco de dados com as novas tecnologias conquistadas
pelas novas arquiteturas de computao com o passar dos anos.
A Microsoft, alm desse problema, tambm precisava oferecer um banco
de dados confvel e robusto ao seu prprio mercado de desenvolvedores
de aplicao, para quem preparava uma sute completa de desenvolvimento
que mais tarde seria o Visual Studio.
Ela ento criou implementaes ao cdigo original ANSI permitindo
a integrao e modernizao de seu SQL Server s novas tecnologias e
arquiteturas.
No caso da Microsoft, ela chama essas implementaes ao cdigo ANSI
de Transact-SQL ou T-SQL.
O Instituto Americano de
Padronizao (American Natio-
nal Standards Institute ANSI)
e a Organizao de Padroni-
zao Internacional (Interna-
tional Standards Organization
ISO) defniram padres para
a linguagem SQL.
O Transact-SQL oferece su-
porte para o padro ANSI SQL
mais recente publicado em
1992, chamado ANSI SQL-92.
Evidentemente, uma linguagem muito poderosa e de recursos para os
mais complexos desenvolvimentos.
Fonte: Microsoft SqlServer 2005 .
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
Banco de dados SQL Server
175
Dentro do nosso objetivo de aprendizado vamos comentar e utilizar os co-
mandos da linguagem SQL utilizando o SQL Server Management Studio, que
o ambiente de desenvolvimento e manuteno do banco de dados totalmen-
te grfco e nativo. A vantagem da utilizao desse produto a grande produ-
tividade que ele permite com a facilidade de interpretao de cdigo SQL na
qual a construo de objetos, como tabelas e regras de integridade, funcionam
com o clicar e arrastar botes, que a forma de trabalho do Windows.
Para se conectar ao Management Studio:
Digite:
Server Type: Database Engine
Server name: Nome do Servidor onde est instalado o SQL Server
Autentication: Senha do Windows (padro) ou do SQL Server
Fonte: Microsoft SQl Management Studio, 2005.
Esta a tela inicial carregada como o ambiente do SQLServer:
Fonte: Microsoft SQl Management Studio, 2005.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
176
Banco de dados SQL Server
Selecione dentro do Database principal, sua esquerda, Database/
tempdb, que o Banco de Dados que vamos trabalhar.
Fonte: Microsoft SQl Management Studio, 2005.
Criar uma tabela no banco de dados
CREATE TABLE
A criao da tabela no SQL Server feita pelo aplicativo Management
Studio que envia uma instruo CREATE TABLE para o banco.
Essa instruo possui efeito imediato no banco de dados e tambm regis-
tra informaes no dicionrio de dados.
Existem vrios tipos de datatypes que so tratados pelo SQL Server. Aqui
vamos comentar os seguintes:
Datatype Descrio
VARCHAR(size) Recebe dados tipo caracter de tamanhos varives.
CHAR (size) Recebe dados tipo caracter com tamanho fxo.
DECIMAL (size,size) Recebe dados numricos inteiros e decimais.
DATETIME Recebe dados de data e hora.
Exemplo:
Criar uma tabela chamada ALUNO com cdigo de 7 posies numrico e
nome com 25 posies alfanumrico:
Em tempdb, clique com o boto direito do mouse dentro de tables.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
Banco de dados SQL Server
177
Ele vai abrir a janela a seguir com as opes e selecionamos New Table.
Fonte: Microsoft SQl Management Studio, 2005.
O ambiente de criao da tabela ento vai se montar nossa direita, con-
forme pode ser visto na tela a seguir:
Fonte: Microsoft SQl Management Studio, 2005.
Digite o nome da coluna em Column Name e em Data Type seu tamanho
e 7 em Alow Nulls.
Veja que na parte de baixo ele abre uma janela mostrando as proprieda-
des de criao para cada coluna criada.
Terminadas as duas colunas (cdigo e nome), selecione a opo de salvar
(cone do disquete) na barra de ferramentas superior e confrme o nome da
tabela:
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
178
Banco de dados SQL Server
Fonte: Microsoft SQl Management Studio, 2005.
Alterar uma tabela no banco de dados
ALTER TABLE
Conforme pode-se observar na tela abaixo, podemos adicionar (a nova
coluna ser a ltima coluna da tabela), modifcar ou mesmo excluir uma
coluna no banco de dados.
Fonte: Microsoft SQl Management Studio, 2005.
Exemplo 1:
Adicionar a coluna SEXO na tabela ALUNO com as seguintes caractersti-
cas: SEXO char(1).
Navegando em tempdb/tables ela j aparece como uma tabela criada
com todas as suas propriedades. Clique com o boto direito do mouse na
propriedade columns que o aplicativo vai permitir de forma idntica ante-
rior incluir mais uma coluna (New Column). Confrme com a opo salvar na
caixa superior (como na criao da tabela).
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
Banco de dados SQL Server
179
Exemplo 2:
Alterar a coluna SEXO na tabela ALUNO para as seguintes caractersticas:
SEXO char(9).
Navegando em tempdb/tables/aluno/columns ela j aparece como
uma tabela criada com todas as suas colunas. Clique com o boto direito
do mouse na coluna sexo; o aplicativo vai abrir a possibilidade de alterar a
coluna (Modify column) de forma idntica de incluir mais uma coluna. Con-
frme com a opo salvar na caixa superior (como na criao da tabela).
Exemplo 3:
Cancelar a coluna SEXO na tabela ALUNO.
Na aba com a especifcao das colunas da tabela clique com o boto
direito do mouse na coluna e escolha a opo de cancelamento (Delete) e
confrme com a opo salvar.
Fonte: Microsoft SQl Management Studio, 2005.
Manipular dados em tabelas no banco de dados
Para manipulao de linhas de dados em tabelas temos os seguintes co-
mandos: INSERT (inserir), UPDATE (alterar) e DELETE (deletar). Essas instru-
es so do tipo DML (Data Manipulation Language). No SQL Server pode-
mos inserir linhas atravs de um editor ou mesmo rodando um script em
arquivo com os comandos desejados.
INSERT
O comando INSERT utilizado para inserir linha em uma tabela e sua sin-
taxe :
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
180
Banco de dados SQL Server
SINTAXE:
INSERT INTO nome da tabela
VALUES (Valor, Valor)
Valor: os valores devem ser digitados na ordem de criao das colunas
na tabela. Caracteres e valores de data devem ser declarados dentro
de aspas simples. No inclua aspas entre valores numricos.
Exemplo:
Inserir uma linha na tabela ALUNO.
INSERT INTO ALUNO VALUES (1, ANTONIO CARLOS, masculino)
Podemos inserir linhas atravs de um editor ou mesmo rodando um script
em arquivo com os comandos desejados. Navegando em tempdb/tables/
aluno clique com o boto direito do mouse na tabela aluno e selecione a
opo de inserir um comando de script (Script Table as). Dentro dessa opo
selecione Insert e dentro de Insert a opo de digitar um novo comando
(New Query Editor Window).
O Management Studio traz para a aba as propriedades e opes da tabela
para a insero do texto desejado j inserindo a opo do comando SQL
INSERT. Digite os valores e confrme com a opo Execute acima da aba. Caso
o valor digitado esteja correto, uma mensagem de sucesso da linha inserida
aparece em texto abaixo. Caso esteja incorreto, o Management abrir um
texto de comentrio do erro em vermelho.
Fonte: Microsoft SQl Management Studio, 2005.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
Banco de dados SQL Server
181
UPDATE
O comando UPDATE utilizado para alterar uma linha em uma tabela e
sua sintaxe :
SINTAXE:
UPDATE nome da tabela
SET nome da coluna = valor
WHERE = Condio
Para a execuo correta do comando UPDATE, temos que localizar a linha
exata da tabela que queremos atualizar.
Essa localizao fornecida pela clusula WHERE.
Exemplo:
Alterar o valor da coluna NOME na linha na tabela ALUNO cujo cdigo
seja = 1:
UPDATE ALUNO
SET NOME = ANTONIO CARLOS DE SOUZA
WHERE CODIGO = 1
Podemos alterar as linhas atravs de um editor ou mesmo rodando um
script em arquivo com os comandos desejados. Navegando em tempdb/
tables/aluno, clique com o boto direito do mouse na tabela aluno e selecio-
ne a opo de inserir um comando de script (Script Table as). Dentro dessa
opo selecione Update e dentro de Update a opo de digitar um novo
comando (New Query Editor Window).
O Management Studio traz para a aba as propriedades e opes da tabela
para o Update do texto desejado j inserindo a opo do comando SQL
UPDATE. Digite os valores e confrme com a opo Execute acima da aba.
Caso o valor digitado esteja correto, uma mensagem de sucesso da linha in-
serida aparece em texto abaixo. Caso esteja incorreto, o Management abrir
um texto de comentrio do erro em vermelho.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
182
Banco de dados SQL Server
Fonte: Microsoft SQl Management Studio, 2005.
DELETE
Para a execuo correta do comando DELETE, temos de localizar a linha
exata da tabela que queremos deletar.
Essa localizao fornecida pela clusula WHERE.
SINTAXE:
DELETE FROM nome da tabela
WHERE = Condio
Exemplo:
Deletar a linha da tabela ALUNO cujo cdigo seja = 1:
DELETE FROM ALUNO WHERE CODIGO = 1
Podemos deletar as linhas atravs de um editor ou mesmo rodando um
script em arquivo com os comandos desejados. Navegando em tempdb/
tables/aluno, clique com o boto direito do mouse na tabela aluno e selecio-
ne a opo por um comando de script (Script Table as). Dentro dessa opo
selecione Delete as e dentro de delete a opo de digitar um novo comando
(New Query Editor Window).
O Management Studio traz para a aba as propriedades e opes da tabela
para o Update do texto desejado j inserindo a opo do comando SQL
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
Banco de dados SQL Server
183
DELETE. Digite os valores e confrme com a opo Execute acima da aba.
Caso o valor digitado esteja correto, uma mensagem de sucesso da linha in-
serida aparece em texto abaixo. Caso esteja incorreto, o Management abrir
um texto de comentrio do erro em vermelho.
Fonte: Microsoft SQl Management Studio, 2005.
COMMIT e ROLLBACK
COMMIT (confrmar, gravar em disco) e ROLLBACK (desfazer, retornar) so
comandos utilizados obrigatoriamente para fnalizar as transaes. No Ma-
nagement a confrmao efetuada clicando o boto Parse (um cone de set
do lado direito do boto execute).
SELECT
o principal comando da linguagem e utilizado para declarao do tipo de
leitura ou linhas que se deseja resgatar no banco. Como a instruo permite
a combinao e concatenao com outros comandos e tabelas, torna-se um
poderoso instrumento de busca em qualquer banco de dados relacional.
SINTAXE:
SELECT CONDIO TABELA COLUNA
FROM TABELA
WHERE CONDIO
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
184
Banco de dados SQL Server
Exemplo:
Selecionar a coluna NOME da tabela ALUNO cujo cdigo seja =1.
Select NOME
From ALUNO
WHERE CODIGO = 1
Podemos selecionar as linhas atravs de um editor ou mesmo rodando
um script em arquivo com os comandos desejados. Navegando em tempdb/
tables/aluno, clique com o boto direito do mouse na tabela aluno e selecio-
ne a opo por um comando de script (Script Table as). Dentro dessa opo
selecione Select to e dentro de delete a opo de digitar um novo comando
(New Query Editor Window).
O Management Studio traz para a aba as propriedades e opes da
tabela para o select do texto desejado j inserindo as opes do comando
SQL SELECT. Digite os valores e confrme com a opo Execute acima da aba.
Caso o valor digitado esteja correto uma mensagem de sucesso da linha in-
serida aparece em texto abaixo. Caso esteja incorreto o Management abrir
um texto de comentrio do erro em vermelho.
Fonte: Microsoft SQl Management Studio, 2005.
Ordenao
Podemos declarar na consulta SQL que os dados sejam mostrados de
forma ordenada. Para tanto devemos usar a clusula ORDER BY especifcan-
do por qual valor de coluna queremos ordenar a consulta.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
Banco de dados SQL Server
185
A ordenao sempre o ltimo comando da declarao. Ela pode ser as-
cendente ASC (padro) ou descendente DESC.
SINTAXE:
ORDER BY
No exemplo a seguir estamos selecionando os dados da tabela ALUNO e
solicitando a ordenao ascendente dos dados pela coluna NOME.
SELECT CODIGO, NOME
FROM ALUNO
ORDER BY NOME
Banco de dados SQL Server resumo
O SQL Server da Microsoft um banco de dados que implementa a arqui-
tetura cliente/servidor e roda em ambiente nativo do Windows.
Possui um software de apoio e gerenciamento de Banco que o SQL
Server Management Studio, onde podemos criar, alterar, inserir, deletar e
consultar dados e estrutura de tabelas em ambiente totalmente grfco.
Atividades
1. Criar uma tabela de empregados chamada EMP com as seguintes de-
fnies:
CODIGO numrico de 7
NOME alfanumrico de 25
SOBRENOME alfanumrico de 25
COD_USURIO alfanumrico de 8
COMENTARIOS alfanumrico de 20
COD_GERENTE numrico de 7
CARGO alfanumrico de 20
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
186
Banco de dados SQL Server
COD_DEPTO numrico de 7
SALARIO numricas de 11 inteiras e 2 decimais
PCT_COMISSO numricas de 4 inteiras e 2 decimais
2. Inserir 4 linhas na tabela EMP com cdigos 1, 7, 14 e 19 e preencher os
outros campos livremente, mas respeitando a defnio da tabela.
3. Alterar a linha cdigo = 7 passando o sobrenome para RIBEIRO DE
LIMA.
4. Alterar a tabela incluindo a coluna MANEQUIM numrico de 2 posi-
es.
5. Selecionar as colunas NOME, SOBRENOME, CARGO da tabela EMP cujo
cdigo seja = 7.
6. Selecionar as colunas NOME, CARGO e SALARIO da tabela EMP orde-
nada pela coluna NOME.
Gabarito
1.
Fonte: Microsoft SQl Management Studio, 2005.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
Banco de dados SQL Server
187
2.
Inserir Andre Gomes:
Fonte: Microsoft SQl Management Studio, 2005.
Inserir Lucia Helena:
Fonte: Microsoft SQl Management Studio, 2005.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
188
Banco de dados SQL Server
Inserir Maria Antonia:
Fonte: Microsoft SQl Management Studio, 2005.
Inserir Pedro Henrique:
Fonte: Microsoft SQl Management Studio, 2005.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
Banco de dados SQL Server
189
Confrmar as transaes:
Fonte: Microsoft SQl Management Studio, 2005.
3.
Fonte: Microsoft SQl Management Studio, 2005.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
190
Banco de dados SQL Server
4.
Fonte: Microsoft SQl Management Studio, 2005.
5.
Fonte: Microsoft SQl Management Studio, 2005.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
Banco de dados SQL Server
191
6.
Fonte: Microsoft SQl Management Studio, 2005.
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br
Este material parte integrante do acervo do IESDE BRASIL S.A.,
mais informaes www.iesde.com.br