SlideShare uma empresa Scribd logo
1 de 61
T-SQL COM MICROSOFT SQL
SERVER 2012 EXPRESS NA
PRÁTICA
RODRIGO RIBEIRO GONÇALVES
ESTA APRESENTAÇÃO É MATERIAL DE APOIO DO LIVRO HOMÔNIMO,
LANÇADO PELA EDITORA ÉRICA, 2013
RODRIGO RIBEIRO GONÇALVES
• Graduado em Sistema de Informação
• Pós-graduado em Gerenciamento de Projetos
• Microsoft Certified Professional
• Microsoft Certified Trainer
• Autor publicado pela Editora Érica
• http://www.linkedin.com/pub/rodrigo-ribeiro-gon%C3%A7alves/11/9a0/372
• http://tsqlmaster.blogspot.com.br/
CAPÍTULO I
A ORIGEM DO SQL
• Desenvolvido no anos de 1970 nos laboratórios da IBM
• Donald Chamberlin
• Raymond Boyce
• Criado para trabalhar com o System R, um dos primeiros sistemas de banco de dados
computadorizados, criado por Edward Codd, autor de "A Relational Model of Data for Large Shared Data
Banks”, livro que definiu os pilares da teoria de banco de dados
O Microsoft sql server 2012 express
• Versão limitada, porém gratuita, destinada ao estudo e ao desenvolvimento
• Pode ser baixado de
http://www.microsoft.com/sqlserver/en/us/editions/2012-editions/express.aspx.
EXERCÍCIOS DE FIXAÇÃO
1. Quem criou a linguagem SQL?
2. Quem criou as teorias relacionais que fundamentam os SGBDs modernos?
3. Que empresa criou o T-SQL?
4. Quais são as edições do SQL SERVER 2012?
5. Quais as principais limitações de cada edição?
6. O que quer dizer a sigla SQL?
7. Quais são os dois modos de autenticação no SQL SERVER 2012?
CAPÍTULO II
Conheça o management studio
Para abrir scripts .SQL no Management Studio, clique em FileOpenFile.
ABERTURA DE UMA NOVA JANELA DE QUERY
SYSTEM DATABASES
• MASTER
• MODEL
• MSDB
• TEMPDB
EXERCÍCIOS DE FIXAÇÃO
1. Como é possível abrir um arquivo de scripts através do SSMS?
2. Qual o nome dos bancos de dados de sistema do SQL SERVER?
3. Para que serve o banco de dados master?
4. Para que serve o banco de dados model?
5. O que é o Object Explorer?
CAPÍTULO III
PRIMEIRO SCRIPT
VARIÁVEIS E TIPOS DE DADOS
CONCATENAÇÃO DE STRINGS
DECLARE @HELLO VARCHAR(100)
SET @HELLO = 'Hello World! T-SQL na prática'
.....
OPERADORES ARITMÉTICOS
Operação Operador
Adição +
Subtração -
Multiplicação *
Divisão /
Mod %
COMPARADORES LÓGICOS
Operador Definição
= Igual a
> Maior que
< Menor que
>= Maior que
<= Menor que
<> Diferente que
USO DO WHILE
WHILE @COUNT < 10
……
DATAS NO SQL SERVER
FUNÇÕES GETDATE() E CURRENT_TIMESTAMP...COMO USÁ-LAS?
CONVERSÃO DE DADOS COM CAST E CONVERT
DECLARE
@VALOR INT
SET @VALOR = 1000
PRINT 'VALOR É ' + CAST(....
EXERCÍCIOS DE FIXAÇÃO
1. Qual o comando para declarar variáveis no T-SQL?
2. Qual o operador para realizar concatenação de Strings no T-SQL?
3. Qual o operador aritmético de subtração no T-SQL?
4. Escreva um trecho de código realizando a multiplicação entre duas variáveis do tipo
REAL, uma delas com o valor de 8 e a outra com o valor de 9.
5. Adicione ao script da questão anterior um comentário de várias linhas com o
enunciado da questão anterior.
CAPÍTULO IV
CRIAÇÃO DE UM BANCO DE DADOS
CREATE DATABASE ProjetoTSQL
ARQUIVOS MDF E LDF
CREATE TABLE
USE ProjetoTSQL
CREATE TABLE Clientes(
...
CHAVE PRIMÁRIA
ALTER TABLE CLIENTES
ADD ...
INSERÇÃO DE REGISTROS COM O INSERT
INSERT INTO Clientes(Nome
,Endereço
,Telefone
,Email
,DataNascimento)
...
CONSULTA A REGISTROS COM SELECT
SELECT
Codigo
,Nome
,...
FILTRO DE CONSULTAS COM WHERE
SELECT
Codigo
,Nome
,...
OPERADOR AND
WHERE
Codigo > 1
....
ATUALIZAÇÃO COM O COMANDO UPDATE
UPDATE
Clientes
....
ISNULL E COALESCE
SELECT
ISNULL(…
TABELAS TEMPORÁRIAS
CREATE TABLE #Clientes
EXERCÍCIOS DE FIXAÇÃO
1.Crie um banco de dados denominado ProjetoCapitulo4.
2.Dentro do banco de dados ProjetoCapitulo4, crie uma tabela chamada usuários com os seguintes campos e tipos de dados:
• Código, Iiteiro, sequencial e chave primária
• Nome, cadeira caracteres com no máximo 200 caracteres
• Login, cadeira caracteres com no máximo dez caracteres
• Senha, cadeira caracteres com no máximo seis caracteres
1.Altere a tabela usuários adicionando um campo denominado DataCriacao com a data de criação do registro, com a data atual como valor padrão .
2.Insira o seguinte grupo de dados na tabela usuários (TABELA ABAIXO).
3.Atualize o registro com login "rodrigo" e altere a senha para "54321“.
4.Exclua o registro com o login "daniel“.
5.Exclua todos os registros da tabela, de tal forma que o próximo registro a ser inserido tenha o campo código com o valor um.
6.Crie uma tabela temporária com a mesma estrutura da tabela usuários.
7.Exclua o banco de dados ProjetoCapitulo4.
Nome Login Senha
Rodrigo rodrigo 132435
Daniel daniel 989876
Carolina carol 192837
CAPÍTULO V
CHAVE ESTRANGEIRA
CREATE TABLE Vendas(
Codigo INT IDENTITY(1,1)
PRIMARY KEY
,Cliente INT
REFERENCES ....
CHAVE ESTRANGEIRA COM ALTER TABLE
ALTER TABLE Vendas ADD CONSTRAINT fkProdutos
FOREIGN KEY....
DIAGRAMAS DE BANCO DE DADOS
INNER JOIN
...
FROM
Clientes C
INNER JOIN Vendas
….
LEFT JOIN
....
FROM
Clientes C
LEFT JOIN Vendas…
RIGHT JOIN
...
FROM
VENDAS v
RIGHT JOIN Produtos
...
USO DO COUNT E FUNÇÕES DE AGREGAÇÃO
SELECT
Count(*) ...
EXERCÍCIOS DE FIXAÇÃO
1. Crie um banco de dados ProjetoCapitulo5.
2. No banco de dados ProjetoCapitulo5 crie uma tabela Clientes com os seguintes campos
Código, inteiro, sequencial e chave primária
Nome, cadeira de caracteres com no máximo 200 caracteres
3. Crie uma tabela chamada Pedidos com os seguintes campos:
• Código, inteiro, sequencial e chave primária
• DataPedido, Data, valor padrão data atual
• Cliente, inteiro, chave estrangeira da tabela clientes
• Valor, numérico com duas casas depois da vírgula
4. Insira três registros na tabela clientes com nomes diferentes e dois pedidos para os dois
primeiros clientes.
5. Faça uma query listando todos os clientes e o número de pedidos para cada cliente mesmo
que não tenham pedido nenhum.
CAPÍTULO VI
CRIAÇÃO DE VIEWS
CREATE VIEW vwClientesAtivos
AS
...
CRIAÇÃO DE TRIGGERS
CREATE Trigger UpdateProdutos ON Produtos
FOR UPDATE AS
...
QUERY COM SQL DINÂMICO
DECLARE
@DATAINI DATETIME
,@DATAFIM DATETIME
SELECT
@DATAINI='20121221'
,@DATAFIM='20121222'
SELECT
Codigo
,Cliente....
CRIAÇÃO DE PROCEDURES
CREATE PROC SP_PRODUTOS_CAROS
AS
.....
CRIAÇÃO DE FUNÇÕES
CREATE FUNCTION dbo.fnPar(@Valor INT)
RETURNS BIT
BEGIN
.....
USO DE FUNÇÕES PARA MANIPULAÇÃO DE STRINGS
• SUBSTRING
• RIGHT
• LEFT
• LEN
FUNÇÕES DE MANIPULAÇÃO DE DATAS
• DAY
• MONTH
• YEAR
• DATEADD
• DATEDIFF
O QUE SÃO E COMO USÁ-LAS?
EXERCÍCIOS DE FIXAÇÃO
1. Crie um banco de dados Capitulo6.
2. Crie uma tabela com o nome de Produtos no banco de dados Capitulo6 com os seguintes
campos:
3. Código, inteiro, sequencial e chave ´primária
4. Nome, cadeia de caracteres com no máximo 200 carcateres
5. DataNascimento, Data
6. DataAtualizacao, Data
7. Insira ao menos dez registros com nomes diferentes, e destes dez somente dois com data de
nascimento inferior a 01/10/1980.
8. Crie uma view denominada vwClientes1980, listando todos os clientes que nasceram em
entre 01/01/1980 e 12/12/1989.
9. Crie uma procedure que percorre os registros da tabela Clientes linha a linha, atualizando o
campo DataAtualizacao com a data atual.
10.Crie uma função que recebe como argumento um parâmetro Data e calcula a idade baseada
no parâmetro.
11.Crie uma query que lista todos os clientes da tabela Clientes e usa a função criada
anteriormente para determinar a idade do cliente.
12.Crie uma query listando os primeiros cinco caracteres do campo nome dos clientes.
13.Exclua o banco de dados Capitulo6.
CAPÍTULO VII
ACESSANDO TABELAS DE SISTEMA
sys.objects
Sys.columns
CRIAÇÃO DE ÍNDICES
CREATE INDEX IXNomeCliente ...
ACESSO AO EXECUTION PLAN
O COMANDO BACKUP DATABASE
BACKUP DATABASE ProjetoTSQL...
O COMANDO BACKUP DATABASE
BACKUP DATABASE ProjetoTSQL...
RESTAURAÇÃO DE UM BACKUP
RESTORE DATABASE [ProjetoTSQL]…
EXERCÍCIOS DE FIXAÇÃO
1. Para que serve a view Sys.Objects e quais as principais colunas?
2. Para que server a view Sys.Columns e quais os principais campos?
3. Abra uma nova janela de query, crie uma tabela temporária chamada #Tabelas com os
seguintes campos:
4. Tabela, cadeia de caracteres com no máximo 100 caracteres
5. Coluna, cadeia de caracteres com no máximo 100 caracteres
6. Crie um script com um cursor que percorre todas as tabelas do banco de dados e cada uma
de suas colunas e insere tudo na tabela temporária criada anteriormente.
7. Agora, crie um banco de dados Capitulo7 e faça um backup full desse banco de dados na
pasta temp do seu computador.
8. Restaure o banco de dados com o backup criado na questão anterior.
9. Exclua o banco de dados criado anteriormente.
FIM

Mais conteúdo relacionado

Mais procurados

Mais procurados (11)

Banco de Dados no Visual Studio
Banco de Dados no Visual StudioBanco de Dados no Visual Studio
Banco de Dados no Visual Studio
 
Aula de Reforço Access
Aula de Reforço Access Aula de Reforço Access
Aula de Reforço Access
 
Linguagem SQL
Linguagem SQLLinguagem SQL
Linguagem SQL
 
Banco de dados aula 4
Banco de dados aula 4Banco de dados aula 4
Banco de dados aula 4
 
Comandos DDL para o MySQL
Comandos DDL para o MySQLComandos DDL para o MySQL
Comandos DDL para o MySQL
 
Sql - introdução
Sql -  introduçãoSql -  introdução
Sql - introdução
 
Apostila ib
Apostila ibApostila ib
Apostila ib
 
Introdução ao SQL
Introdução ao SQLIntrodução ao SQL
Introdução ao SQL
 
Aula 9 banco de dados
Aula 9   banco de dadosAula 9   banco de dados
Aula 9 banco de dados
 
Exercícios de mysql
Exercícios de mysqlExercícios de mysql
Exercícios de mysql
 
Base de dados Acess 2013 para iniciantes
Base de dados Acess 2013 para iniciantesBase de dados Acess 2013 para iniciantes
Base de dados Acess 2013 para iniciantes
 

Destaque (18)

Value Of Advice Old Mutual
Value Of Advice Old MutualValue Of Advice Old Mutual
Value Of Advice Old Mutual
 
คอม
คอมคอม
คอม
 
Apostila para estud1
Apostila para estud1Apostila para estud1
Apostila para estud1
 
Cibes Product Range Brochure
Cibes Product Range BrochureCibes Product Range Brochure
Cibes Product Range Brochure
 
Ti scorm lms_licencias_creative_commons _fernandez_lara
Ti  scorm lms_licencias_creative_commons _fernandez_laraTi  scorm lms_licencias_creative_commons _fernandez_lara
Ti scorm lms_licencias_creative_commons _fernandez_lara
 
Gifted Education Chicago
Gifted Education ChicagoGifted Education Chicago
Gifted Education Chicago
 
Cv karina carrillo
Cv karina carrilloCv karina carrillo
Cv karina carrillo
 
Nghệ trắng - thần dược kỳ diệu của thiên nhiên
Nghệ trắng - thần dược kỳ diệu của thiên nhiênNghệ trắng - thần dược kỳ diệu của thiên nhiên
Nghệ trắng - thần dược kỳ diệu của thiên nhiên
 
Sandra rodriguez actividad1_2mapac
Sandra rodriguez actividad1_2mapacSandra rodriguez actividad1_2mapac
Sandra rodriguez actividad1_2mapac
 
Scientific events (1989- 2015)
Scientific events (1989- 2015)Scientific events (1989- 2015)
Scientific events (1989- 2015)
 
Reversen #1
Reversen #1Reversen #1
Reversen #1
 
Introdução à Geografia do Brasil
Introdução à Geografia do BrasilIntrodução à Geografia do Brasil
Introdução à Geografia do Brasil
 
Portales educativos
Portales educativosPortales educativos
Portales educativos
 
Awais mohammad's cv
Awais mohammad's cvAwais mohammad's cv
Awais mohammad's cv
 
Comunicación cientifica
Comunicación cientificaComunicación cientifica
Comunicación cientifica
 
Power sofas
Power sofasPower sofas
Power sofas
 
jmoksha atul
jmoksha atuljmoksha atul
jmoksha atul
 
Transportación
TransportaciónTransportación
Transportación
 

Semelhante a Express2012simples 130312140529-phpapp01

T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012Rodrigo Ribeiro
 
Apostila Access 2000.pdf
Apostila Access 2000.pdfApostila Access 2000.pdf
Apostila Access 2000.pdfssuser382e50
 
Desenvolvimento web com vs2012: Uma visão geral
Desenvolvimento web com vs2012: Uma visão geralDesenvolvimento web com vs2012: Uma visão geral
Desenvolvimento web com vs2012: Uma visão geralHelder Lopes
 
Aula 03 banco de dados em asp.net (cadastrar)
Aula 03   banco de dados em asp.net (cadastrar)Aula 03   banco de dados em asp.net (cadastrar)
Aula 03 banco de dados em asp.net (cadastrar)Gabriel Bugano
 
ODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de DadosODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de DadosCaio Lima
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Daniel Makiyama
 
Exemplo e caso prático do uso de base de dados
Exemplo e caso prático do uso de base de dadosExemplo e caso prático do uso de base de dados
Exemplo e caso prático do uso de base de dadosLuis Borges Gouveia
 
6338 111121071604-phpapp01
6338 111121071604-phpapp016338 111121071604-phpapp01
6338 111121071604-phpapp01Gilson Figueredo
 
3260 php truquesmagicos %281%29
3260 php truquesmagicos %281%293260 php truquesmagicos %281%29
3260 php truquesmagicos %281%29Juliana Nascimento
 
Desenvolvimento Delphi
Desenvolvimento DelphiDesenvolvimento Delphi
Desenvolvimento Delphihildebertomelo
 
Funcionalidades de Acesso a Dados no 'Mango'
Funcionalidades de Acesso a Dados no 'Mango'Funcionalidades de Acesso a Dados no 'Mango'
Funcionalidades de Acesso a Dados no 'Mango'C. Augusto Proiete
 

Semelhante a Express2012simples 130312140529-phpapp01 (20)

T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012
 
Hibernate-consultas
Hibernate-consultasHibernate-consultas
Hibernate-consultas
 
Apostila Access 2000.pdf
Apostila Access 2000.pdfApostila Access 2000.pdf
Apostila Access 2000.pdf
 
Aula1
Aula1Aula1
Aula1
 
Otimizando a performance com in memory no sql 2016
Otimizando a performance com in memory no sql 2016Otimizando a performance com in memory no sql 2016
Otimizando a performance com in memory no sql 2016
 
Hands on Labs - SQL Server 2008
Hands on Labs - SQL Server 2008Hands on Labs - SQL Server 2008
Hands on Labs - SQL Server 2008
 
Ns tutorial so
Ns tutorial soNs tutorial so
Ns tutorial so
 
Desenvolvimento web com vs2012: Uma visão geral
Desenvolvimento web com vs2012: Uma visão geralDesenvolvimento web com vs2012: Uma visão geral
Desenvolvimento web com vs2012: Uma visão geral
 
Aula 03 banco de dados em asp.net (cadastrar)
Aula 03   banco de dados em asp.net (cadastrar)Aula 03   banco de dados em asp.net (cadastrar)
Aula 03 banco de dados em asp.net (cadastrar)
 
ODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de DadosODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de Dados
 
Vb
VbVb
Vb
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
 
Exemplo e caso prático do uso de base de dados
Exemplo e caso prático do uso de base de dadosExemplo e caso prático do uso de base de dados
Exemplo e caso prático do uso de base de dados
 
6338 111121071604-phpapp01
6338 111121071604-phpapp016338 111121071604-phpapp01
6338 111121071604-phpapp01
 
3260 php truquesmagicos %281%29
3260 php truquesmagicos %281%293260 php truquesmagicos %281%29
3260 php truquesmagicos %281%29
 
3260 php truquesmagicos
3260 php truquesmagicos3260 php truquesmagicos
3260 php truquesmagicos
 
Desenvolvimento Delphi
Desenvolvimento DelphiDesenvolvimento Delphi
Desenvolvimento Delphi
 
Aula 06 - TEP - Introdução SQLite
Aula 06 - TEP - Introdução SQLiteAula 06 - TEP - Introdução SQLite
Aula 06 - TEP - Introdução SQLite
 
Access
AccessAccess
Access
 
Funcionalidades de Acesso a Dados no 'Mango'
Funcionalidades de Acesso a Dados no 'Mango'Funcionalidades de Acesso a Dados no 'Mango'
Funcionalidades de Acesso a Dados no 'Mango'
 

Express2012simples 130312140529-phpapp01

  • 1. T-SQL COM MICROSOFT SQL SERVER 2012 EXPRESS NA PRÁTICA RODRIGO RIBEIRO GONÇALVES ESTA APRESENTAÇÃO É MATERIAL DE APOIO DO LIVRO HOMÔNIMO, LANÇADO PELA EDITORA ÉRICA, 2013
  • 2. RODRIGO RIBEIRO GONÇALVES • Graduado em Sistema de Informação • Pós-graduado em Gerenciamento de Projetos • Microsoft Certified Professional • Microsoft Certified Trainer • Autor publicado pela Editora Érica • http://www.linkedin.com/pub/rodrigo-ribeiro-gon%C3%A7alves/11/9a0/372 • http://tsqlmaster.blogspot.com.br/
  • 4. A ORIGEM DO SQL • Desenvolvido no anos de 1970 nos laboratórios da IBM • Donald Chamberlin • Raymond Boyce • Criado para trabalhar com o System R, um dos primeiros sistemas de banco de dados computadorizados, criado por Edward Codd, autor de "A Relational Model of Data for Large Shared Data Banks”, livro que definiu os pilares da teoria de banco de dados
  • 5. O Microsoft sql server 2012 express • Versão limitada, porém gratuita, destinada ao estudo e ao desenvolvimento • Pode ser baixado de http://www.microsoft.com/sqlserver/en/us/editions/2012-editions/express.aspx.
  • 6. EXERCÍCIOS DE FIXAÇÃO 1. Quem criou a linguagem SQL? 2. Quem criou as teorias relacionais que fundamentam os SGBDs modernos? 3. Que empresa criou o T-SQL? 4. Quais são as edições do SQL SERVER 2012? 5. Quais as principais limitações de cada edição? 6. O que quer dizer a sigla SQL? 7. Quais são os dois modos de autenticação no SQL SERVER 2012?
  • 8. Conheça o management studio Para abrir scripts .SQL no Management Studio, clique em FileOpenFile.
  • 9. ABERTURA DE UMA NOVA JANELA DE QUERY
  • 10. SYSTEM DATABASES • MASTER • MODEL • MSDB • TEMPDB
  • 11. EXERCÍCIOS DE FIXAÇÃO 1. Como é possível abrir um arquivo de scripts através do SSMS? 2. Qual o nome dos bancos de dados de sistema do SQL SERVER? 3. Para que serve o banco de dados master? 4. Para que serve o banco de dados model? 5. O que é o Object Explorer?
  • 14. VARIÁVEIS E TIPOS DE DADOS
  • 15. CONCATENAÇÃO DE STRINGS DECLARE @HELLO VARCHAR(100) SET @HELLO = 'Hello World! T-SQL na prática' .....
  • 16. OPERADORES ARITMÉTICOS Operação Operador Adição + Subtração - Multiplicação * Divisão / Mod %
  • 17. COMPARADORES LÓGICOS Operador Definição = Igual a > Maior que < Menor que >= Maior que <= Menor que <> Diferente que
  • 18. USO DO WHILE WHILE @COUNT < 10 ……
  • 19. DATAS NO SQL SERVER FUNÇÕES GETDATE() E CURRENT_TIMESTAMP...COMO USÁ-LAS?
  • 20. CONVERSÃO DE DADOS COM CAST E CONVERT DECLARE @VALOR INT SET @VALOR = 1000 PRINT 'VALOR É ' + CAST(....
  • 21. EXERCÍCIOS DE FIXAÇÃO 1. Qual o comando para declarar variáveis no T-SQL? 2. Qual o operador para realizar concatenação de Strings no T-SQL? 3. Qual o operador aritmético de subtração no T-SQL? 4. Escreva um trecho de código realizando a multiplicação entre duas variáveis do tipo REAL, uma delas com o valor de 8 e a outra com o valor de 9. 5. Adicione ao script da questão anterior um comentário de várias linhas com o enunciado da questão anterior.
  • 23. CRIAÇÃO DE UM BANCO DE DADOS CREATE DATABASE ProjetoTSQL
  • 25. CREATE TABLE USE ProjetoTSQL CREATE TABLE Clientes( ...
  • 26. CHAVE PRIMÁRIA ALTER TABLE CLIENTES ADD ...
  • 27. INSERÇÃO DE REGISTROS COM O INSERT INSERT INTO Clientes(Nome ,Endereço ,Telefone ,Email ,DataNascimento) ...
  • 28. CONSULTA A REGISTROS COM SELECT SELECT Codigo ,Nome ,...
  • 29. FILTRO DE CONSULTAS COM WHERE SELECT Codigo ,Nome ,...
  • 31. ATUALIZAÇÃO COM O COMANDO UPDATE UPDATE Clientes ....
  • 34. EXERCÍCIOS DE FIXAÇÃO 1.Crie um banco de dados denominado ProjetoCapitulo4. 2.Dentro do banco de dados ProjetoCapitulo4, crie uma tabela chamada usuários com os seguintes campos e tipos de dados: • Código, Iiteiro, sequencial e chave primária • Nome, cadeira caracteres com no máximo 200 caracteres • Login, cadeira caracteres com no máximo dez caracteres • Senha, cadeira caracteres com no máximo seis caracteres 1.Altere a tabela usuários adicionando um campo denominado DataCriacao com a data de criação do registro, com a data atual como valor padrão . 2.Insira o seguinte grupo de dados na tabela usuários (TABELA ABAIXO). 3.Atualize o registro com login "rodrigo" e altere a senha para "54321“. 4.Exclua o registro com o login "daniel“. 5.Exclua todos os registros da tabela, de tal forma que o próximo registro a ser inserido tenha o campo código com o valor um. 6.Crie uma tabela temporária com a mesma estrutura da tabela usuários. 7.Exclua o banco de dados ProjetoCapitulo4. Nome Login Senha Rodrigo rodrigo 132435 Daniel daniel 989876 Carolina carol 192837
  • 36. CHAVE ESTRANGEIRA CREATE TABLE Vendas( Codigo INT IDENTITY(1,1) PRIMARY KEY ,Cliente INT REFERENCES ....
  • 37. CHAVE ESTRANGEIRA COM ALTER TABLE ALTER TABLE Vendas ADD CONSTRAINT fkProdutos FOREIGN KEY....
  • 38. DIAGRAMAS DE BANCO DE DADOS
  • 42. USO DO COUNT E FUNÇÕES DE AGREGAÇÃO SELECT Count(*) ...
  • 43. EXERCÍCIOS DE FIXAÇÃO 1. Crie um banco de dados ProjetoCapitulo5. 2. No banco de dados ProjetoCapitulo5 crie uma tabela Clientes com os seguintes campos Código, inteiro, sequencial e chave primária Nome, cadeira de caracteres com no máximo 200 caracteres 3. Crie uma tabela chamada Pedidos com os seguintes campos: • Código, inteiro, sequencial e chave primária • DataPedido, Data, valor padrão data atual • Cliente, inteiro, chave estrangeira da tabela clientes • Valor, numérico com duas casas depois da vírgula 4. Insira três registros na tabela clientes com nomes diferentes e dois pedidos para os dois primeiros clientes. 5. Faça uma query listando todos os clientes e o número de pedidos para cada cliente mesmo que não tenham pedido nenhum.
  • 45. CRIAÇÃO DE VIEWS CREATE VIEW vwClientesAtivos AS ...
  • 46. CRIAÇÃO DE TRIGGERS CREATE Trigger UpdateProdutos ON Produtos FOR UPDATE AS ...
  • 47. QUERY COM SQL DINÂMICO DECLARE @DATAINI DATETIME ,@DATAFIM DATETIME SELECT @DATAINI='20121221' ,@DATAFIM='20121222' SELECT Codigo ,Cliente....
  • 48. CRIAÇÃO DE PROCEDURES CREATE PROC SP_PRODUTOS_CAROS AS .....
  • 49. CRIAÇÃO DE FUNÇÕES CREATE FUNCTION dbo.fnPar(@Valor INT) RETURNS BIT BEGIN .....
  • 50. USO DE FUNÇÕES PARA MANIPULAÇÃO DE STRINGS • SUBSTRING • RIGHT • LEFT • LEN
  • 51. FUNÇÕES DE MANIPULAÇÃO DE DATAS • DAY • MONTH • YEAR • DATEADD • DATEDIFF O QUE SÃO E COMO USÁ-LAS?
  • 52. EXERCÍCIOS DE FIXAÇÃO 1. Crie um banco de dados Capitulo6. 2. Crie uma tabela com o nome de Produtos no banco de dados Capitulo6 com os seguintes campos: 3. Código, inteiro, sequencial e chave ´primária 4. Nome, cadeia de caracteres com no máximo 200 carcateres 5. DataNascimento, Data 6. DataAtualizacao, Data 7. Insira ao menos dez registros com nomes diferentes, e destes dez somente dois com data de nascimento inferior a 01/10/1980. 8. Crie uma view denominada vwClientes1980, listando todos os clientes que nasceram em entre 01/01/1980 e 12/12/1989. 9. Crie uma procedure que percorre os registros da tabela Clientes linha a linha, atualizando o campo DataAtualizacao com a data atual. 10.Crie uma função que recebe como argumento um parâmetro Data e calcula a idade baseada no parâmetro. 11.Crie uma query que lista todos os clientes da tabela Clientes e usa a função criada anteriormente para determinar a idade do cliente. 12.Crie uma query listando os primeiros cinco caracteres do campo nome dos clientes. 13.Exclua o banco de dados Capitulo6.
  • 54. ACESSANDO TABELAS DE SISTEMA sys.objects Sys.columns
  • 55. CRIAÇÃO DE ÍNDICES CREATE INDEX IXNomeCliente ...
  • 57. O COMANDO BACKUP DATABASE BACKUP DATABASE ProjetoTSQL...
  • 58. O COMANDO BACKUP DATABASE BACKUP DATABASE ProjetoTSQL...
  • 59. RESTAURAÇÃO DE UM BACKUP RESTORE DATABASE [ProjetoTSQL]…
  • 60. EXERCÍCIOS DE FIXAÇÃO 1. Para que serve a view Sys.Objects e quais as principais colunas? 2. Para que server a view Sys.Columns e quais os principais campos? 3. Abra uma nova janela de query, crie uma tabela temporária chamada #Tabelas com os seguintes campos: 4. Tabela, cadeia de caracteres com no máximo 100 caracteres 5. Coluna, cadeia de caracteres com no máximo 100 caracteres 6. Crie um script com um cursor que percorre todas as tabelas do banco de dados e cada uma de suas colunas e insere tudo na tabela temporária criada anteriormente. 7. Agora, crie um banco de dados Capitulo7 e faça um backup full desse banco de dados na pasta temp do seu computador. 8. Restaure o banco de dados com o backup criado na questão anterior. 9. Exclua o banco de dados criado anteriormente.
  • 61. FIM