fundamentos de sql - parte 4 de 8

20
Fundamentos de SQL Microsoft SQL Server 2005 Emiliano Eloi <[email protected]> 1

Upload: emiliano-eloi-silva-barbosa

Post on 04-Jul-2015

1.392 views

Category:

Education


2 download

DESCRIPTION

Nesta parte do curso veremos como alterar as definições de uma tabela. Também aprenderemos algumas funções utilizadas para trabalhar com datas.

TRANSCRIPT

Fundamentos de SQL

Microsoft SQL Server 2005

Emiliano Eloi <[email protected]>

1

Objetivos

• Ser capaz se fazer intervenções em bancos de dados que utilizem esta linguagem.–Definições das bases de dados.–Manipulação dos dados.–Recuperação dos dados.

• Compreender Diagramas de entidade- relacionamento.

• Pensar em SQL.

2

Para hoje

• Na aula anterior nós vimos como criar uma tabela e como armazenar um procedimento.

• Hoje vamos continuar trabalhando com definição de dados.

• Também veremos algumas funções de data.

3

Lista de Verificação

Micro computado ligado.Teclado e mouse.Autenticação no Windows. Internet Explorer funcionando.Microsoft SQL Server Management

Studio.

4

DER – DB_CALL_CENTER_CENTRAL

5

DER – DBEMIL

6

Cadastrar Call center - Proprietário

Base de dados: DB_CALL_CENTER_CENTRALTabela: TBL_PROPRIETARIOS (ID_PROPRIETARIO[INT], NM_NOME_PROPRIETARIO[VARCHAR(255)] )

Obs.: A coluna ID_PROPRIETARIO é uma identidade da tabela e é controlada pelo banco de dados.

INSERT INTO TBL_INSTRUMENTOS (NM_NOME_INSTRUMENTO)VALUES (‘Guitarra’)

7

Cadastro Call center – Call Center

Base de dados: DB_CALL_CENTER_CENTRALTabela: TBL_CALLS_CENTERS(ID_CALL_CENTER[INT], NM_NOME_CALL_CENTER[VARCHAR(255)], ID_PROPRIETARIO[INT])

Obs.: A coluna ID_CALL_CENTER é uma identidade da tabela e é controlada pelo banco de dados; A coluna ID_PROPRIETARIO se refere a um registro presenta na tabela TBL_PROPRIETARIOS.

8

Alterar uma tabela - ALTER TABLE

O comando ALTER TABLE altera a definição de uma tabela existente. A forma ADD COLUMN adiciona uma nova coluna na tabela utilizando a mesma sintaxe de CREATE TABLE. A forma ALTER COLUMN SET/DROP DEFAULT permite definir ou remover o valor padrão para a coluna. Note que o valor padrão somente se aplica aos próximos comandos INSERT; as linhas existentes na tabela não são modificadas. A forma ALTER COLUMN SET STATISTICS permite controlar a coleta de estatísticas para as operações ANALYZE posteriores. A cláusula RENAME faz com que o nome da tabela, coluna, índice ou seqüência seja mudado sem que os dados sejam modificados. Os dados permanecem do mesmo tipo e tamanho após o comando ser executado. A cláusula ADD definição_de_restrição_de_tabela adiciona uma nova restrição de tabela utilizando a mesma sintaxe de CREATE TABLE. A cláusula DROP CONSTRAINT restrição elimina todas as restrições da tabela (e de suas descendentes) que correspondam à restrição. A cláusula OWNER muda o dono da tabela para o usuário novo_dono.

9

ALTER TABLE – Excluir uma coluna

/*Excluir coluna

*/ ALTER TABLE TBL_ATENDIMENTOS DROP COLUMN DT_DATA_INICIO_ATENDIMENTO

10

ALTER TABLE – Tabela temporária

/* Criar uma tabela temporária Com o nome #TMP1*/CREATE TABLE #TMP1(

ID_TMP INT,DS_DESCRICAO_TMP TEXT

)

11

ALTER TABLE – Tabela temporária

/* Copiar dados de um tabela física para uma tabela temporária.*/INSERT INTO #TMP1 (ID_TEMP, DS_DESCRICAO_TEMP)SELECT ID_ATENDIMENTO, DS_DESCRICAO_ATENDIMENTO FROM TBL_ATENDIMENTOS

12

ALTER TABLE – Tabela temporária

/*Apagar a tabela TBL_ATENDIMENTOS

*/ DROPTABLE TBL_ATENDIMENTOS

13

ALTER TABLE – Adicionar uma coluna

/*Criar uma coluna na tabela

TBL_ATENDIMENTOS*/ALTERTABLE TBL_ATENDIMENTOS ADD NM_NOME_ATENDIMENTO VARCHAR(255)

14

Exercícios

1) Excluir a coluna DT_DATA_ATENDIMENTO da tabela TBL_ATENDIMENTOS

3) Incluir a coluna DT_DATA_CADASTRO_CLIENTE NA na tabela TBL_CLIENTES.

15

Funçõs de data - GETDATE

-- Retorna a data de agoraSELECT GETDATE()[AGORA]

16

Funções de data – DATEADD E DATEDIFF

-- Retorna a data de daqui a um mêsSELECT DATEADD(MONTH,1,GETDATE())[MES_QUE_VEM]

-- Retorna o tempo de atendimentoSELECT DATEDIFF(HOUR,'2009-05-05 10:00','2009-05-05 11:30')[TEMPO_ATENDIMENTO]

17

Funções de data – Tabela de partes da data

Palavra-chave Período

year Anoquarter Trimestre

month Mêsday Diaweek Semanahour Horaminute Minutosecond Segundo

millisecond Milisegundo

18

Funções de data – YEAR, MONTH, DAY E DATEPART

/* Usar uma variável para armazenar uma data*/DECLARE @DATA DATETIMESET @DATA = '2001-10-11 07:55'-- Ano dessa dataSELECT YEAR(@DATA)[ANO]-- Mês dessa dataSELECT DATEPART(MONTH,@DATA)[MES]-- DIA dessa dataSELECT DAY(@DATA)

19

Exercícios

Relatórios:R1) Idade dos atendentes.Colunas: Nome e IdadeR2) Idade dos Clientes.Colunas: Nome e IdadeR3) Contatos Futuros. Colunas: id do cliente, id do atendente, data do contato, data do próximo contato.Regra: Próximo contato é igual a data do contato mais um mês.R4) Tempo de atendimento.Colunas: id do cliente, id do atendente, tempo de atendimento.

20