[RESOLVIDO]Inclusão em SQL

13 respostas
matheuscechito

Como faço para dar um INSERT de uma tabela da base A para uma outra tabela para da base B????

INSERT INTO TabelaA (Nome)
SELECT Nome FROM TabelaB

onde Tabela A está na base AAA e
onde Tabela B está na base BBB

por favor, se alguem souber...não deve ser dificil

obrigado desde já

13 Respostas

nbluis

Cara, tu acabou de responder…

INSERT INTO TabelaA (Nome)
SELECT Nome FROM TabelaB

Sem o values mesmo…

Até mais…

matheuscechito

nbluis:
Cara, tu acabou de responder…

INSERT INTO TabelaA (Nome)
SELECT Nome FROM TabelaB

se eu fizer dessa maneira ae, eu incluo na mesma base…

tabelaA esta em uma base e tabelaB esta em outra…

valeu

nbluis

Não entendi…

peczenyj

Ah, vc tem 2 databases diferentes?

Tente criar um arquivo com tudo o que vc precisa da Base A e mande a Base B importar.

matheuscechito

eu tenho meu Banco e neste banco tenho duas bases de dados - BaseA e BaseB.

tenho --> BaseA.TabelaA e BaseA.TabelaB
e --> BaseB.TabelaA e BaseB.TabelaB

eu quero fazer um insert da BaseA.TabelaA para BaseB.TabelaA

entendeu?!

furutani

Qual banco de dados voce está usando?
Eu acho que no oracle vc vai ter q usar um dblink

matheuscechito

SQL-SERVER

nbluis

Fácil cara, dblink serve para tu fazer ligação de dois bancos remotos, mas no caso de apenas dois schemas basta tu setar o schema deles na frente das tabelas.

Assim:

INSERT INTO Schema1.TabelaA (Nome)
SELECT Nome FROM Schema2.TabelaB

OBS: Não esqueça que o teu usuário deve ter permissão de visualização para os dois schemas.

Até mais…

J

Você quer dizer, tenho 2 bancos e cada um tem a mesma tabela e você quer transferir dados de um para o outro?

Pois se você tem no mesmo banco duas bases de dados isso não faz sentido.

O banco é a base de dados. Um banco relacional, como o Oracle, é formado por tabelas que são relacionadas entre si.

No caso do Oracle pra você inserir dados numa tabela que está em outro banco você precisa utilizar um dblink que é o identificador desse banco, muitas vezes no mesmo servidor.

Ex.:

insert into dblink@TabelaB select * from TabelaA.

Esse dblink você precisa obter com o seu DBA.

[Editado]
Ok, é Sql-Server…

nbluis

Péééééeé…

Cara, o oracle trabalha com o conceito de banco de dados e usuarios.
Cara usuario tem suas tabelas, para acessar tabelas de outro usuarios basta fazer exatamente como eu falei.

insert into “nomedousuario.nomedatabela”, se estão no mesmo banco de dados não é necessário dblink, basta ter premissão para acessar o outro usuário.

Até…

nbluis

Em sql server, no mesmo banco basta especificar o schema na frente…
Caso contrário, daí sim… não sei pois não trabalho com ele faz tempo…

Até

matheuscechito

não sei o que vcs entedem por banco e base

eu entendo q eu tenho o banco SQL-SERVER e nele tenho duas ou mais bases, iguais ou diferentes.

mas resolvi o meu problema da seguinte maneira:

use BaseA INSERT INTO TabelaA (Nome) SELECT Nome FROM BaseB..TabelaA
ou seja, para acessar uma outra base no mesmo banco e no mesmo servidor, basta utilizar … entre a base e a tabela

obrigado a todos

P

Meu estou precisando fazer um insert em dois bancos, sendo que o mesmo é dblink usando apenas duas linhas de comando,

Acho que deve ser igual há esse que vc fez, mas tenho uma duvida, não tenho que passar o nome do banco ?

Criado 23 de fevereiro de 2007
Ultima resposta 27 de abr. de 2009
Respostas 13
Participantes 6