Jump to content
Fórum Script Brasil
  • 0

inserir campos em tabelas de bases diferentes


NIK

Question

Pessoal... beleza

Não sei se é possível porém gostaria de fazer o seguinte:

Tenho uma base chamada de baseoficial e outra chamada de baseteste.

Tenho uma tabela na base oficial (Cliente) que tem 12 campos na tabela (codigo, nomecliente, endereco, complemento, cidade, estado, pais, endercobranca, telefone, cep, contato, email)

E na mesma tabela na base teste (Cliente) apenas 3 campos (codigo, nomecliente, endereco)

As duas bases no mesmo servidor.

Tem como eu fazer a inserção dos campos faltantes na tabela da baseteste com os mesmos parametros da oficial sem ter que inserir um a um, gostaria de ter um script que inserisse todos os campos e também seus parametros.

Valeu

NIK

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Bom dia NIK,

Com as duas bases no mesmo servidor, fica mais fácil de trabalhar...

Você pode fazer uma transferência dos dados utilizando o Wizard do Sql. Ao invés de copiar a tabela toda, abra a opção de execução de script e faça o script de cópia.

Outra alternativa, e para mim a mais simples e rápida:

Como está no mesmo servidor, poderá alterar as bases em uma mesma janela utilizando o USE.

- você cria uma temporária para transporte.

- Vá até a base de produção utilizando o comando "USE baseoficial".

- Dê o select e copie os dados para a tabela de transporte.

- Utilize o comando "USE baseteste".

- Insira os dados na tabela Cliente utilizando os dados gravados na tabela de transporte.

Link to comment
Share on other sites

  • 0

Fulvio... obrigado pela resposta...

Até tentei fazer alguma coisa sobre sua resposta, porém, não consegui.

Você não tem um script para eu ver como funciona.

Valeu

NIK

Bom dia NIK,

Com as duas bases no mesmo servidor, fica mais fácil de trabalhar...

Você pode fazer uma transferência dos dados utilizando o Wizard do Sql. Ao invés de copiar a tabela toda, abra a opção de execução de script e faça o script de cópia.

Outra alternativa, e para mim a mais simples e rápida:

Como está no mesmo servidor, poderá alterar as bases em uma mesma janela utilizando o USE.

- você cria uma temporária para transporte.

- Vá até a base de produção utilizando o comando "USE baseoficial".

- Dê o select e copie os dados para a tabela de transporte.

- Utilize o comando "USE baseteste".

- Insira os dados na tabela Cliente utilizando os dados gravados na tabela de transporte.

Link to comment
Share on other sites

  • 0

Segue exemplo de script:

-- cria temporária
CREATE TABLE #Temporaria (codigo int, nomecliente VARCHAR(60), endereco VARCHAR(100))

-- acesse a base Oficial
USE baseoficial 

-- insere na temporária
INSERT INTO #Temporaria
SELECT codigo, nomecliente, endereco FROM Cliente

-- acesse a base Teste
USE baseteste

-- insere na tabela cliente os códigos que ainda não existem.
INSERT INTO Cliente
SELECT * FROM #Temporaria WHERE codigo NOT IN (SELECT codigo FROM Cliente)

Link to comment
Share on other sites

  • 0

Fulvio... acho que minha pergunta não ficou clara... desculpe, vou tentar melhorar...

Duas bases no mesmo servidor

Base oficial - Tabela Cliente - (codigo, nome, descricao, endereço, telefone, contato, email, estado)

Base teste - Tabela Cliente - (codigo, nome, descricao)

gostaria de acrescentar na base teste as demais colunas que não existem (endereço,telefone,contato,email,estado) com os parametros que estão na oficial.

Ou seja

Através de uma sentença gostaria de pegar as colunas que não existem na base teste e cria -las para posteriormente inserir dados dentro das colunas.

Gostaria de deixa -las iguais nas colunas

Base oficial - Tabela Cliente - (codigo, nome, descricao, endereço, telefone, contato, email, estado)

Base teste - Tabela Cliente - (codigo, nome, descricao, endereço, telefone, contato, email, estado)

Os dados que estão inseridos na base oficial eu vejo depois como fazer.

Obrigado

NIK

Link to comment
Share on other sites

  • 0

Boa tarde NIK,

Realmente eu entendi errado. Desculpe.

Para fazer esta criação / migração, seria melhor você utilizar o Wizard do sql. você vai primeiramente deletar a tabela Cliente da Base Teste. No Wizard, selecionar a tabela Cliente da Base Oficial e copia-la para a Base Teste. Selecionar a opção de criar automaticamente a tabela na base de destino. O sql vai criar a tabela e migrar os dados.

Outra alternativa: no Management clique com o botão direito do mouse em cima do nome da tabela, escolha "Script Table as" / "Create To" / "New Query Editor Window". Aparecerá o script para criar a tabela com todos os seus campos.

Delete a tabela na Base de Teste e crie-a novamente utilizando o script. Aí pra gravar os dados, pode usar o script q te passei logo acima, mas pegando todos os campos.

Espero ter ajudado agora!!! :.)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652.1k
×
×
  • Create New...