--AULA 01 - Creating Databases
--Criando tabelas COM e SEM compressão de dados
CREATE DATABASE DB6232
GO
USE DB6232
GO
--Criando uma tabela SEM compressão
CREATE TABLE SemCompressao
(
id INT IDENTITY,
nome VARCHAR(100),
sobrenome VARCHAR(100)
)
GO
--Inserindo 30.000 registros
SET NOCOUNT ON
DECLARE @count INT
SET @count = 1
WHILE @count <= 10000
BEGIN
INSERT INTO SemCompressao VALUES
('João','da Silva'),('Mario','Henrique'),('Marina','Lima')
SET @count = @count + 1
END
GO
SELECT COUNT(*) FROM SemCompressao
--Verificando o espaço usado
EXEC sp_spaceused SemCompressao
--Criando uma tabela COM compressão
CREATE TABLE ComCompressao
(
id INT IDENTITY,
nome VARCHAR(100),
sobrenome VARCHAR(100)
) WITH (DATA_COMPRESSION = ROW)
GO
--Inserindo 30.000 registros
SET NOCOUNT ON
DECLARE @count INT
SET @count = 1
WHILE @count <= 10000
BEGIN
INSERT INTO ComCompressao VALUES
('João','da Silva'),('Mario','Henrique'),('Marina','Lima')
SET @count = @count + 1
END
GO
SELECT COUNT(*) FROM ComCompressao
--Comparando o espaço usado
EXEC sp_spaceused SemCompressao
EXEC sp_spaceused ComCompressao
--AULA 02 - Creating Filegroups
-- ====================================================================================
-- Autor : Lineu Alves Lima Filho
-- Data Criação : 02/11/2009
-- Descrição : Módulo 01
-- ====================================================================================
-- Versão : 1.0
-- ====================================================================================
-- Versão :
-- Data Atualização :
-- ====================================================================================
--Criar as pastas DATA_FILES e LOG_FILES no drive F.
-- Criando um banco de dados com todas as propriedades
CREATE DATABASE CAP
ON PRIMARY (NAME = 'Cap_Data_01',
FILENAME = 'F:\DATA_FILES\Cap_Data_01.mdf',
SIZE = 5MB,
MAXSIZE = UNLIMITED,
FILEGROWTH = 10%),
FILEGROUP SEGUNDO DEFAULT
(NAME = 'Cap_Data_02',
FILENAME = 'F:\DATA_FILES\Cap_Data_02.ndf',
SIZE = 5MB,
MAXSIZE = UNLIMITED,
FILEGROWTH = 10%),
FILEGROUP TERCEIRO
(NAME = 'Cap_Data_03',
FILENAME = 'F:\DATA_FILES\Cap_Data_03.ndf',
SIZE = 5MB,
MAXSIZE = 500MB,
FILEGROWTH = 5%)
LOG ON
(NAME = 'Cap_Log',
FILENAME = 'F:\LOG_FILES\Cap_Log.ldf',
SIZE = 1MB,
MAXSIZE = 1GB,
FILEGROWTH = 1MB)
GO
sp_helpdb CAP
-- Tamanho do arquivo Cap_Data_01 -->
-- Alterando a estrutuda de um banco de dados
ALTER DATABASE CAP
MODIFY FILE
(NAME = 'Cap_Data_01',
SIZE = 10MB)
sp_helpdb CAP
-- Tamanho do arquivo Cap_Data_01 -->
-- Verificando o tamanho do arquivo de LOG "ANTES DO IMPORT"
sp_helpdb CAP
-- Cap_Log -->
-- Exportar a tabela Person.Person do banco de dados
-- AdventureWorks2008 para o banco de dados CAP
-- Verificando o tamanho do LOG "DEPOIS DO IMPORT"
sp_helpdb CAP
-- Cap_Log -->
-- Reduzindo o LOG após importar dados
USE CAP
GO
DBCC SHRINKFILE ('Cap_Log', 1)
GO
-- Verificando o tamanho do LOG "APÓS BACKUP LOG e SHRINKFILE"
sp_helpdb CAP
-- Cap_Log -->
-- Verificando as propriedades dos FILEGROUPS
SELECT name, is_default, is_read_only
FROM CAP.sys.filegroups
-- Alterando o filegroup TERCEIRO para READONLY
ALTER DATABASE CAP
MODIFY FILEGROUP TERCEIRO READONLY
GO
SELECT name, is_default, is_read_only
FROM CAP.sys.filegroups
-- Alterando o filegroup TERCEIRO para READWRITE
ALTER DATABASE CAP
MODIFY FILEGROUP TERCEIRO READWRITE
GO
SELECT name, is_default, is_read_only
FROM CAP.sys.filegroups
-- Configurando o filegroup TERCEIRO como DEFAULT
ALTER DATABASE CAP
MODIFY FILEGROUP TERCEIRO DEFAULT
GO
SELECT name, is_default, is_read_only
FROM CAP.sys.filegroups
-- Configurando o filegroup SEGUNDO como DEFAULT
ALTER DATABASE CAP
MODIFY FILEGROUP SEGUNDO DEFAULT
GO
SELECT name, is_default, is_read_only
FROM CAP.sys.filegroups
--Adicionando o FILEGROUP "QUARTO" ao banco de dados CAP
USE [master]
GO
ALTER DATABASE [CAP] ADD FILEGROUP [QUARTO]
GO
--Verificando os FILEGROUPS do banco CAP
USE CAP
GO
sp_helpfilegroup
--AULA 03 - Creating Schemas
-- ====================================================================================
-- Autor : Lineu Alves Lima Filho
-- Data Criação : 02/11/2009
-- Descrição : Módulo 01
-- ====================================================================================
-- Versão : 1.0
-- ====================================================================================
-- Versão :
-- Data Atualização :
-- ====================================================================================
USE CAP
GO
-- Criando o SCHEMA "Financeiro"
CREATE SCHEMA Financeiro
GO
CREATE TABLE Financeiro.Empregados
(
cod_emp INT,
nome_Emp VARCHAR(50)
)
GO
-- Verificando
SELECT s.name AS [Schema], t.name AS [Tabela]
FROM sys.schemas s INNER JOIN sys.tables t
ON s.schema_id = t.schema_id
INSERT INTO Financeiro.Empregados VALUES
(1,'Maria'), (2,'Pedro'), (3,'Florinda')
SELECT * FROM Financeiro.Empregados
-- Criando um LOGIN
USE [master]
GO
CREATE LOGIN Martins WITH PASSWORD='123',
DEFAULT_DATABASE=CAP,
CHECK_EXPIRATION=OFF,
CHECK_POLICY=OFF
GO
-- Criando um USUÁRIO para o banco "CAP"
USE CAP
GO
CREATE USER Martins
FOR LOGIN Martins
GO
-- Concedendo permissão ao usuário Martins para o banco "CAP"
USE CAP
GO
EXEC sp_addrolemember 'db_owner', 'Martins'
GO
-- Setando o schema Financeiro como default para o usuário Martins
ALTER USER Martins
WITH DEFAULT_SCHEMA = Financeiro
-- Criando uma tabela com o usuário Martins como DEFAULT
EXECUTE AS USER = 'Martins'
CREATE TABLE Tarefas
(
codido INT,
tarefa VARCHAR(100)
)
GO
-- Verificando
SELECT s.name AS [Schema], t.name AS [Tabela]
FROM sys.schemas s INNER JOIN sys.tables t
ON s.schema_id = t.schema_id
--AULA 04 - Creating Databases Snapshots
-- ====================================================================================
-- Autor : Lineu Alves Lima Filho
-- Data Criação : 19/11/2009
-- Descrição : Módulo 01
-- ====================================================================================
-- Versão : 1.0
-- ====================================================================================
-- Versão :
-- Data Atualização :
-- ====================================================================================
/********** DATABASE SNAPSHOT **********/
-- STEP 1: Criar as pastas "F:\DADOS" e F:\SNAPSHOT
CREATE DATABASE Loja_Virtual
ON PRIMARY
(
NAME = 'Loja_Virtual_Data1',
FILENAME = 'F:\DADOS\Loja_Virtual.mdf'
)
GO
USE Loja_Virtual
GO
CREATE TABLE produtos
(
prod_id int,
nome_prod char(50),
val_prod dec(9,2)
)
GO
INSERT INTO produtos VALUES (1,'Arroz',7.99),
(2,'Chiclete',1.99), (3,'Banana',1.09),
(4,'Leite',1.59), (5,'Ventilador',79.99)
SELECT TOP 10 * FROM produtos
sp_helpdb Loja_Virtual
CREATE DATABASE Loja_Virtual_Snapshot
ON
(
NAME='Loja_Virtual_Data1',
FILENAME='F:\SNAPSHOT\Loja_Virtual_Snapshot.ss'
)
AS SNAPSHOT OF Loja_Virtual
GO
--Deletando 1 registro
DELETE FROM produtos
WHERE prod_id = 1
SELECT * FROM produtos
SELECT * FROM Loja_Virtual_Snapshot.dbo.produtos
--Restaurando 1 registro
INSERT INTO produtos
SELECT * FROM Loja_Virtual_Snapshot.dbo.produtos
WHERE prod_id = 1
SELECT TOP 10 * FROM produtos
--Apagando 1 tabela
DROP TABLE produtos
--> Gerar o script da tabela produtos
--Restaurando 1 tabela
INSERT INTO produtos
SELECT * FROM Loja_Virtual_Snapshot.dbo.produtos
SELECT TOP 10 * FROM produtos
--Apagando uma tabela
DROP TABLE produtos
--Restaurando um banco
USE [master]
GO
RESTORE DATABASE Loja_Virtual
FROM DATABASE_SNAPSHOT = 'Loja_Virtual_Snapshot'
USE Loja_Virtual
GO
SELECT TOP 10 * FROM produtos
--AULA 05 - RowCompression
--ROW COMPRESSION
--Criando tabelas COM e SEM compressão de dados
CREATE DATABASE DB6232
GO
USE DB6232
GO
--Criando uma tabela SEM compressão
CREATE TABLE SemCompressao
(
id INT IDENTITY,
nome VARCHAR(100),
sobrenome VARCHAR(100)
)
GO
--Inserindo 30.000 registros
SET NOCOUNT ON
DECLARE @count INT
SET @count = 1
WHILE @count <= 10000
BEGIN
INSERT INTO SemCompressao VALUES
('João','da Silva'),('Mario','Henrique'),('Marina','Lima')
SET @count = @count + 1
END
GO
SELECT COUNT(*) FROM SemCompressao
--Verificando o espaço usado
EXEC sp_spaceused SemCompressao
--Criando uma tabela COM compressão
CREATE TABLE ComCompressao
(
id INT IDENTITY,
nome VARCHAR(100),
sobrenome VARCHAR(100)
) WITH (DATA_COMPRESSION = ROW)
GO
--Inserindo 30.000 registros
SET NOCOUNT ON
DECLARE @count INT
SET @count = 1
WHILE @count <= 10000
BEGIN
INSERT INTO ComCompressao VALUES
('João','da Silva'),('Mario','Henrique'),('Marina','Lima')
SET @count = @count + 1
END
GO
SELECT COUNT(*) FROM ComCompressao
--Comparando o espaço usado
EXEC sp_spaceused SemCompressao
EXEC sp_spaceused ComCompressao
Nenhum comentário:
Postar um comentário