A nova tabela será criada com os mesmos nomes das colunas, os mesmos tipos de dados
e os mesmos registros da tabela original do instante em que se executa o comando abaixo:
SINTAXE
SELECT * INTO nova_tabela FROM tabela_original;
Caso tenha interesse, veja o script no GitHub ou faça o download no Google Drive.
Este post é dividido em cinco partes:
1ª parte: damos um exemplo de como criar a tabela "tb_paciente";
2ª parte: vamos criar a tabela "tb_paciente_bkp" a partir da tabela "tb_paciente"
.
3ª parte: vamos criar a tabela "tb_paciente_bkp_altera_col" a partir da tabela "tb_paciente", a nova tabela terá o nome das colunas diferentes das colunas da tabela original.
4ª parte: vamos criar a tabela "tb_paciente_bkp_filt" a partir da tabela "tb_paciente", mas vamos incluir apenas alguns registros da tabela original, ou seja, vamos utilizar um filtro.
5ª parte: vamos criar a tabela "tb_paciente_bkp_col" a partir da tabela "tb_paciente", mas vamos incluir na nova tabela apenas algumas colunas da tabela original.
Tabela: tb_paciente |
1ª parte
➧ Caso queira criar esta tabela no seu banco de dados, segue o script da criação da tabela:
CREATE TABLE tb_paciente
(
prontuario int IDENTITY(1,1) PRIMARY KEY,
nome varchar(255) NOT NULL ,
data_nasc date NOT NULL ,
sexo character(1) NOT NULL ,
peso numeric(6,3),
proc_cirurgico bit NOT NULL
);
➧ Para incluir os registros na tabela "tb_paciente" utilize o comando INSERT:
INSERT INTO tb_paciente (nome, data_nasc, sexo, peso, proc_cirurgico)
VALUES ('Maria Santos', '1984-04-20', 'f', 52.440, 1);
INSERT INTO tb_paciente(nome, data_nasc, sexo, peso, proc_cirurgico)
VALUES ('João Silva', '1974-08-29', 'm', 80.520 , 0);
INSERT INTO tb_paciente(nome , data_nasc , sexo , peso , proc_cirurgico)
VALUES('Ana Moraes', '1982-10-30', 'f', 57.700, 1);
➧ Para visualizar os registros na tabela "tb_paciente" utilize o comando SELECT:
SELECT
prontuario ,
nome ,
data_nasc ,
sexo ,
peso ,
proc_cirurgico
FROM tb_paciente;
2ª parte
Agora, vamos criar a cópia desta tabela.
SELECT * INTO tb_paciente_bkp FROM tb_paciente;
Repare que nosso exemplo segue a sintaxe:
SELECT * INTO nova_tabela FROM tabela_original;
Importante!!!
Se o nome atribuído a nova tabela já existir no banco de dados, será exibida a mensagem de erro abaixo, e a cópia da tabela não será criada.
Mensagem 2714, Nível 16, Estado 6
Já existe um objeto com nome 'tb_paciente_bkp' no banco de dados.
Para corrigir este erro, troque o nome da nova tabela.
➧ Para visualizar os registros na tabela "tb_paciente_bkp" utilize o comando SELECT:
SELECT * FROM tb_paciente_bkp;
Veja abaixo o resultado da nova tabela:Tabela: tb_paciente_bkp |
3ª parte
SELECT
prontuario AS pac_prontuario,
nome AS pac_nome,
data_nasc AS pac_data_nasc ,
sexo AS pac_sexo,
peso AS pac_peso,
proc_cirurgico AS pac_proc_cirurgico
INTO tb_paciente_bkp_altera_col
FROM tb_paciente;
Tabela: tb_paciente_bkp_altera_col |
Após a execução da sentença, será criada uma nova tabela chamada "tb_paciente_bkp_altera_col", essa tabela terá o nome das colunas diferente das colunas da tabela de origem "tb_paciente".
4ª parte
Existe a possibilidade de criar uma nova tabela, apena com alguns registros da tabela original, para isso utilizaremos um filtro, representado pelo comando "WHERE".
Vamos criar a tabela "tb_paciente_bkp_filt", a partir da tabela "tb_paciente", e vamos filtrar os pacientes somente do sexo feminino, ou seja, sexo = 'f'.
Veja a sentença abaixo:
prontuario,
nome,
data_nasc,
sexo,
peso,
proc_cirurgico
INTO tb_paciente_bkp_filt
FROM tb_paciente
WHERE sexo = 'f';
Após a execução da sentença, será criada uma nova tabela. Veja a imagem abaixo:
Tabela: tb_paciente_bkp_filt |
5ª parte
Existe a possibilidade de criar uma nova tabela, apena com algumas colunas da tabela original, para isso, colocaremos apenas as colunas desejadas, após o comando "SELECT".
Vamos criar a tabela "tb_paciente_bkp_col", a partir da tabela "tb_paciente", apenas com algumas colunas da tabela original. Neste caso, vamos escolher as colunas: "prontuario", "nome" e "peso"
Veja a sentença abaixo:
SELECT
prontuario,
nome,
peso
INTO tb_paciente_bkp_col
FROM tb_paciente;
Após a execução da sentença, será criada uma nova tabela. Veja a imagem abaixo:
Vamos criar a tabela "tb_paciente_bkp_col", a partir da tabela "tb_paciente", apenas com algumas colunas da tabela original. Neste caso, vamos escolher as colunas: "prontuario", "nome" e "peso"
Veja a sentença abaixo:
SELECT
prontuario,
nome,
peso
INTO tb_paciente_bkp_col
FROM tb_paciente;
Após a execução da sentença, será criada uma nova tabela. Veja a imagem abaixo:
Tabela: tb_paciente_bkp_col |
Deixe o seu comentário ou sugestão.
Gostou? Siga no Google + ou Facebook.
Nenhum comentário:
Postar um comentário