t sql exercicios
TRANSCRIPT
-
T-SQL com Microsoft SQL Server 2012 Express na Prtica
Rodrigo Ribeiro Gonalves
Respostas dos Exerccios
Editora rica Ltda.
Cd. 4537
-
T-SQ
L co
m M
icro
soft
SQ
L Se
rver
201
2 Ex
pres
s na
Pr
tica
2
Captulo 1
1. Donald Chamberlin e Raymond Boyce.
2. Edgar Frank "Ted" Codd.
3. MicrosofteSybase.
4.
] Enterprise ] Business Intelligence ] Standard ] Web ] ExpresswithAdvancedServices ] Express with tools ] Express
5.
Edio
Funcionalidade
Capacidade mxima de
processamento por instncia
Capacidade mxima de
processamento por instncia (SSAS, SSRS)
Mximo de memria utilizada
pelo Database
Engine
Mximo de memria utilizada
pelo Analysis Services
Mximo de memria utilizada
pelo Reporting Services
Tamanho Mximo de um
Banco de Dados
relacional
Enterprise
Mximo suportado
peloSistemaOperacional
Mximo suportado
peloSistemaOperacional
Mximo suportado
peloSistemaOperacional
Mximo suportado
peloSistemaOperacional
Mximo suportado
peloSistemaOperacional
524 PB
Business Intelligence
4Socketsou 16 Cores
Mximo suportado
peloSistemaOperacional
64 GB
Mximo suportado
peloSistemaOperacional
Mximo suportado
peloSistemaOperacional
524 PB
Standard4Socketsou
16 Cores4Socketsou
16 Cores64 GB 64 GB 64 GB 524 PB
Web4Socketsou
16 Cores4Socketsou
16 Cores64 GB N/A 64 GB 524 PB
Express with
Advanced Services
4Socketsou 16 Cores
4Socketsou 16 Cores
1 GB N/A 4 GB 10 GB
Express with Tools
4Socketsou 16 Cores
4Socketsou 16 Cores
1 GB N/A N/A 10 GB
Express4Socketsou
16 Cores4Socketsou
16 Cores1 GB N/A N/A 10 GB
-
Resp
osta
s do
s Ex
erc
cios
3
6. Structured Query Language.
7. WindowsAuthenticationeSQLServerAuthentication.
Captulo 2
1. Para abrir arquivos de script, clique em File\Open\File.
2. Master, Model, Msdb e Tempdb.
3. O banco de dados master registra todas as informaes de sistema sobre a instnciadoSQLServer.Issoabrangeosmetadadosdosbancosdedadosdainstncia, contas de login, informaes sobre servidores conectados instn-cia, tambm chamados de linkedserverseconfiguraesdesistema.
4. O banco de dados modelutilizadocomoumtemplate para a criao de ou-trosbancosdedados,ouseja,todososbancosdedadossocriadosapartirdesse modelo.
5. O Object Explorer,painelqueporpadroficaesquerdadatela,mostraemuma estrutura hierrquica as instncias conectadas, seus bancos de dados e suas estruturas de objetos como tabelas, procedures e functions.
Captulo 3
1. Declare
2. +
3. -
-
T-SQ
L co
m M
icro
soft
SQ
L Se
rver
201
2 Ex
pres
s na
Pr
tica
4
4.DECLARE @V1 NUMERIC(10,2) ,@V2 NUMERIC(10,2)
SELECT @V1 = 8 ,@V2 = 9
SELECT @V1 * @V2 AS [Resultado]
5./* Escreva um trecho de cdigo realizando a multiplicao entre duas variveis do tipo REAL, uma delas com o valor de 8 e a outra com o valor de 9.*/
DECLARE @V1 NUMERIC(10,2) ,@V2 NUMERIC(10,2)
SELECT @V1 = 8 ,@V2 = 9
SELECT @V1 * @V2 AS [Resultado]
Captulo 4
1. CREATE DATABASE ProjetoCapitulo4
2. USE ProjetoCapitulo4
CREATE TABLE USUARIOS( Codigo INT IDENTITY(1,1) PRIMARY KEY ,Nome VARCHAR(200) ,Login VARCHAR(10) ,Senha VARCHAR(6))
-
Resp
osta
s do
s Ex
erc
cios
5
3. ALTER TABLE USUARIOSADD DATAATUAL DATETIME DEFAULT GETDATE()
4. INSERT INTO USUARIOS(NOME,LOGIN,SENHA)VALUES ('Rodrigo', 'rodrigo','132435') ,('Daniel','daniel','989876') ,('Carolina','carol','192837')
5. UPDATE USUARIOSSET senha='54321'WHERE LOGIN='rodrigo'
6. DELETE FROM USUARIOSWHERE LOGIN='DANIEL'
7. TRUNCATE TABLE USUARIOS
8. CREATE TABLE #USUARIOS( Codigo INT IDENTITY(1,1) PRIMARY KEY ,Nome VARCHAR(200) ,Login VARCHAR(10) ,Senha VARCHAR(6))
9. USE TEMPDB
DROP DATABASE ProjetoCapitulo4
-
T-SQ
L co
m M
icro
soft
SQ
L Se
rver
201
2 Ex
pres
s na
Pr
tica
6
Captulo 5
1.CREATE DATABASE ProjetoCapitulo5
2.CREATE TABLE Clientes( codigo INT IDENTITY(1,1) PRIMARY KEY ,NOME VARCHAR(200))
3.CREATE TABLE Pedidos( Codigo INT IDENTITY(1,1) PRIMARY KEY ,DataPedido DATETIME DEFAULT GETDATE() ,Cliente INT REFERENCES Clientes(Codigo) ,Valor NUMERIC(10,2))
4.INSERT INTO Clientes(NOME)VALUES('Joo'),('Jos'),('Maria')
INSERT INTO Pedidos (Cliente,Valor)VALUES (1,100.20) ,(2,201.98)
5.SELECT NOME ,COUNT(P.Codigo)FROM Clientes CLEFT JOIN Pedidos P ON (C.codigo=P.Cliente)GROUP BY NOME
-
Resp
osta
s do
s Ex
erc
cios
7
Captulo 6
1.CREATE DATABASE Capitulo6
2.USE Capitulo6
CREATE TABLE Clientes( Codigo INT IDENTITY(1,1) PRIMARY KEY ,Nome VARCHAR(200) ,DataNascimento DATETIME ,DataAtualizacao DATETIME)
3.INSERT INTO Clientes(Nome, DataNascimento, DataAtualizacao)VALUES ('Rodrigo','19780130',GETDATE()) ,('Daniel','19780130',GETDATE()) ,('Nelson','19850130',GETDATE()) ,('Jlio','19850130',GETDATE()) ,('Jonas','19850130',GETDATE()) ,('Maria','19850130',GETDATE()) ,('Fernanda','19850130',GETDATE()) ,('Luisa','19850130',GETDATE()) ,('Giovanna','19850130',GETDATE()) ,('Isabella','19850130',GETDATE())
4.CREATE VIEW vwClientes1980ASSELECT * FROM ClientesWHERE DATANASCIMENTO BETWEEN '19800101' AND '19891212'
5.DECLARE @id INT
DECLARE db_cursor CURSOR FOR SELECT CODIGOFROM Clientes
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @id
-
T-SQ
L co
m M
icro
soft
SQ
L Se
rver
201
2 Ex
pres
s na
Pr
tica
8
WHILE @@FETCH_STATUS = 0 BEGIN UPDATE Clientes SET [DataAtualizacao]=GETDATE() WHERE CODIGO=@ID FETCH NEXT FROM db_cursor INTO @id END
CLOSE db_cursor
DEALLOCATE db_cursor
6.CREATE FUNCTION FN_IDADE(@DTNASCTO DATETIME)RETURNS INTBEGIN
DECLARE @RESULT INT
SELECT @RESULT=DATEDIFF(YEAR,@DTNASCTO,GETDATE())
RETURN @RESULT
END
7.SELECT dbo.FN_IDADE(DATANASCIMENTO) AS IDADE,* FROM Clientes
8.SELECT LEFT(NOME,5) AS NOMEFROM Clientes
9.DROP DATABASE Capitulo6
-
Resp
osta
s do
s Ex
erc
cios
9
Captulo 7
1. A View Sys.objects listatodososobjetoscontidosnobancodedados,sejamobjetos de sistema ou criados pelos usurios de banco de dados.
2. Sys.Columns outra view de sistema, que lista as colunas de todas as tabelas eseusrespectivostiposdedados,"nulabilidade",aquetabelasestovincula-das, entre outras informaes.
3. CREATE TABLE #TABELAS( Tabela VARCHAR(100) ,Coluna VARCHAR(100))
4. DECLARE @TABELA VARCHAR(100) ,@COLUNA VARCHAR(100)
DECLARE db_cursor CURSOR FOR SELECT O.NAME ,C.NAMEFROM Sys.Objects OJOIN Sys.Columns C ON (O.object_id=C.object_id)WHERE TYPE='U'
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @TABELA ,@COLUNA
WHILE @@FETCH_STATUS = 0 BEGIN INSERT INTO #TABELAS VALUES (@TABELA,@COLUNA)
FETCH NEXT FROM db_cursor INTO @TABELA ,@COLUNA END
CLOSE db_cursor
DEALLOCATE db_cursor
5. CREATE DATABASE Capitulo7
BACKUP DATABASE Capitulo7TO DISK='C:\TEMP\Cap7.BAK'
-
T-SQ
L co
m M
icro
soft
SQ
L Se
rver
201
2 Ex
pres
s na
Pr
tica
10
6. USE tempdb
RESTORE DATABASE Capitulo7FROM DISK='C:\TEMP\Cap7.BAK'
7. DROP DATABASE Capitulo7