Usuário com melhor resposta
Importar dados de uma tabela de um BANCO CLIENTE para o BANCO DA EMPRESA

Pergunta
-
Fala galerinha beleza?
Preciso de uma ajuda de vocês novamente, Tenho um banco de dados em SQL de um cliente com 4 tabelas, e preciso passar estas 4 tabelas para o banco de dados da empresa... No banco de dados da empresa JÀ ESTÂO criada as tabelas, só preciso entao dar um tipo de "replace" nas tabelas ou então copiar somente os dados e referencias os campos... Mas não faço a miníma idéa de como fazer isso... alguma ajuda ?
Respostas
-
Por exemplo:
Você tem uma tabela PRODUTOS no banco EMPRESA com os seguintes campos ( ID,DESCRICAO,FABRICACAO,VALIDADE) na base da sua empresa e na outra base voce tem a mesma tabela só que com os campos (DESCRICAO,FABRICACAO,VALIDADE) , reparou que não tem o campo ID? então seu insert ficara assim:
INSERT INTO EMPRESA.DBO.PRODUTOS (DESCRICAO,FABRICACAO,VALIDADE) /* --> Aqui eu disse que quero inserir os dados da sql */
SELECT DESCRICAO, FABRICAO,VALIDADE FROM SEGUNDOBANCO.DBO.PRODUTOS /*--> Aqui eu busquei os dados la de onde eu quero extrair as informaçõs
Se tiver duvida, me add no MSN ai felipehelison@hotmail.com
- Marcado como Resposta Roberson Ferreira _Moderator terça-feira, 25 de setembro de 2012 16:29
Todas as Respostas
-
Boa Tarde Jovem!
Cara, como ja existem as tabelas no banco da empresa, minha idéia é dar um SELECT com um INSERT. Isto é, se as duas bases estiverem na mesma instancia do SQL.
INSERT INTO BANCO.DBO.TABELADESTINO
SELECT * FROM TABELAORIGEM
Caso os campos forem diferfentes, voce devera especificar os mesmos no VALUE do destino de acordo com o resultado do seu Select.
Att,
Felipe Helison
-
Boa Tarde Jovem!
Cara, como ja existem as tabelas no banco da empresa, minha idéia é dar um SELECT com um INSERT. Isto é, se as duas bases estiverem na mesma instancia do SQL.
INSERT INTO BANCO.DBO.TABELADESTINO
SELECT * FROM TABELAORIGEM
Caso os campos forem diferfentes, voce devera especificar os mesmos no VALUE do destino de acordo com o resultado do seu Select.
Att,
Felipe Helison
Felipe... EU aprendi agora isso num tutorial, mas foi com tabelas do mesmo banco,teria como você dar um exemplo de como farei isso especificando os campos? (como você disse caso seja diferente)
E outra, como saberei se estão na mesma instância? Estou estudando só pelo prompt de comando...
- Editado PlayHardGoPro sábado, 11 de agosto de 2012 17:46
-
Por exemplo:
Você tem uma tabela PRODUTOS no banco EMPRESA com os seguintes campos ( ID,DESCRICAO,FABRICACAO,VALIDADE) na base da sua empresa e na outra base voce tem a mesma tabela só que com os campos (DESCRICAO,FABRICACAO,VALIDADE) , reparou que não tem o campo ID? então seu insert ficara assim:
INSERT INTO EMPRESA.DBO.PRODUTOS (DESCRICAO,FABRICACAO,VALIDADE) /* --> Aqui eu disse que quero inserir os dados da sql */
SELECT DESCRICAO, FABRICAO,VALIDADE FROM SEGUNDOBANCO.DBO.PRODUTOS /*--> Aqui eu busquei os dados la de onde eu quero extrair as informaçõs
Se tiver duvida, me add no MSN ai felipehelison@hotmail.com
- Marcado como Resposta Roberson Ferreira _Moderator terça-feira, 25 de setembro de 2012 16:29
-
Por exemplo:
Você tem uma tabela PRODUTOS no banco EMPRESA com os seguintes campos ( ID,DESCRICAO,FABRICACAO,VALIDADE) na base da sua empresa e na outra base voce tem a mesma tabela só que com os campos (DESCRICAO,FABRICACAO,VALIDADE) , reparou que não tem o campo ID? então seu insert ficara assim:
INSERT INTO EMPRESA.DBO.PRODUTOS (DESCRICAO,FABRICACAO,VALIDADE) /* --> Aqui eu disse que quero inserir os dados da sql */
SELECT DESCRICAO, FABRICAO,VALIDADE FROM SEGUNDOBANCO.DBO.PRODUTOS /*--> Aqui eu busquei os dados la de onde eu quero extrair as informaçõs
Se tiver duvida, me add no MSN ai felipehelison@hotmail.com
Fiz isso e aqui não funcionou...
INSERT INTO test.DBO.cliente ( banco de dados que já vem no sql) (nome,cpf) <- cliente nome da tabela
SELECT (nome,cpf) FROM teste.DBO.cliente <- mesma tabela só muda o nome do db...
add no msn se puder ajudar fico muito agradecido =)
- Editado PlayHardGoPro sábado, 11 de agosto de 2012 17:53
-
Conseguiu?
Podemos fechar esta Thread?
Roberson Ferreira - Database Developer
Acesse: www.robersonferreira.com.br
Email: contato@robersonferreira.com.brSe esta sugestão for útil, por favor, classifique-a como útil.
Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta. -
Conseguiu?
Podemos fechar esta Thread?
Roberson Ferreira - Database Developer
Acesse: www.robersonferreira.com.br
Email: contato@robersonferreira.com.brSe esta sugestão for útil, por favor, classifique-a como útil.
Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.Agora está feito =) muito obrigado a quem me respondeu...
Fiz o seguinte, como era em C#, Abri a conexão com o banco criei um Command e fiz um Select Depois disso fechei a conexão e usando a mesma conexão e o mesmo command fiz o INSERT...
Cya~ '
________________________
Case Closed !
-
OK. Marque as posts que serviram como respostas por favor.
Roberson Ferreira - Database Developer
Acesse: www.robersonferreira.com.br
Email: contato@robersonferreira.com.brSe esta sugestão for útil, por favor, classifique-a como útil.
Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta. -
Boa tarde amigo,
Se você tiver como dar um select simultâneo nas duas bases de dados essa procedure vai funcionar:
CREATE PROCEDURE MIGRA_DADOS AS INSERT INTO BANCOEMPRESA(CAMPO1, CAMPO2, CAMPON) SELECT BC.<CAMPO1>, BC.<CAMPO2>, BC.<CAMPON...> FROM BANCOCLIENTE BC WHERE NOT EXISTS (SELECT 1 FROM BANCOEMPRESA BE WHERE BE.CAMPO1 = BC.CAMPO1 AND BE.CAMPO2 = BC.CAMPO2 AND BE.CAMPON = BC.CAMPON)
caso nao tenha como fazer esse select simultâneo, sugiro extrair os dados da base cliente e coloca-las no excel, e importar o arquivo para a base da empresa utilizando o BCPou BULK INSERT, se tiver dúvidas sobre como fazer isso pode entrar em contato ok ?
- Sugerido como Resposta Khallew Bezerra terça-feira, 25 de setembro de 2012 16:30
- Não Sugerido como Resposta PlayHardGoPro terça-feira, 11 de junho de 2013 17:24