Avatar billede hundevennen Nybegynder
28. april 2005 - 11:11 Der er 16 kommentarer og
1 løsning

kopiere data fra tabel til tabel

jeg har 2 databaser og vil gerne kopiere data fra tabel1 i database1 til tabel1 i database2, altså noget med
insert into tabel1
select * from database2.tabel1 - denne sql sætning virker ihverfald ikke?????
Avatar billede ldanielsen Nybegynder
28. april 2005 - 15:47 #1
Du henviser til objekter sådan:

[[[server.][database].][owner_name].]object_name

Og endvidere kan disse forme bruges:

server.database.owner_name.object_name
server.database..object_name
server..owner_name.object_name
server...object_name
database.owner_name.object_name
database..object_name
owner_name.object_name
object_name


Så:
insert into database1..tabel1
select * from database2..tabel1
Avatar billede hundevennen Nybegynder
28. april 2005 - 18:07 #2
ldanielsen - jeg bruger query analyzer eller vil gerne og der kan man jo vælge hvilken database det drejer sig om - øh target om du vil, så kan man ikke lave den som følgerhvis jeg f.eks vælger database1 og så skriver min sqlsætning som følger:
insert into tabel1.kolonne1, tabel1.kolonne2, tabel1.kolonne3
select * from database2.tabel1.kolonne1, database2.tabel1.kolonne2, database2.tabel1.kolonne3???
Avatar billede ldanielsen Nybegynder
29. april 2005 - 10:35 #3
jo, men du mangler noget:

database2.owner.tabel1.kolonne1

owner vil jo ofte være dbo, men hvis du kan regne med at der ikke er to objekter der hedder table1, kan du undlade owner:

database2..tabel1.kolonne1

Altså to punktummer! Skulle der være to objekter der hedder tabel1, så får du en fejl, så måske skal du have owner med.

Håber det opklarer det.
Avatar billede jtbroad Nybegynder
29. april 2005 - 11:01 #4
højre klik på database1 tabellerne --> all tasks --> export data følge wizarden
Avatar billede ldanielsen Nybegynder
29. april 2005 - 12:15 #5
Ja, det er rigtigt. Det er det der hedder DTS, Data Transformation Services, og det er et rigtig stærkt værktøj.

Måske kan hundevennen bruge det her, men det vi taler om har er en måde hvorpå data kan deles og joines på tværs af databaser, og i sidste ende på tværs af servere, direkte i SQL. DTS kan ikke direkte erstatte dette.
Avatar billede hundevennen Nybegynder
29. april 2005 - 17:48 #6
jtbroad - jeg kender godt de wizards, men vil hellere bruge query analyzer
Avatar billede jtbroad Nybegynder
30. april 2005 - 10:41 #7
Hvis du har brugt wizarden kan du jo gemme DTS pakken og så se syntaksen for at kunne skrive det selv.
Avatar billede jtbroad Nybegynder
30. april 2005 - 10:44 #8
Er det fordi du skal bruge det til at lave en fuldstændig kopi (backup) eller en opdatering.
Avatar billede hundevennen Nybegynder
30. april 2005 - 15:25 #9
jtbroad - næh det er ikke til backup - det er data fra 4 forskellige access baser - der alle indeholder en aktivitetskalender og det er de data jeg vil samle i en sql database og med dette spm finde den nemmeste måde at importere kalenderdata med.
Jeg har importeret de fire kalendere til en sqldatabase og her derfor altså fire kalendere
Avatar billede hundevennen Nybegynder
02. maj 2005 - 14:17 #10
beklager jeg vrøvler lidt - men jeg har selvfølgelig 4 sql aktivitetskalenderbaser og vil ha dem samliet i en.
Avatar billede jtbroad Nybegynder
02. maj 2005 - 17:14 #11
INSERT INTO database1.databaseejer.tabel1.kolonne1, database1.databaseejer.tabel1.kolonne2 (o.s.v....)
SELECT
kolonne1,
kolonne2,
(osv...)
FROM
database2.databaseejer.tabel
Avatar billede hundevennen Nybegynder
02. maj 2005 - 18:50 #12
jtbroad - ja det var sådan noget jeg havde tænkt mig - det bliver testet af
Avatar billede ldanielsen Nybegynder
02. maj 2005 - 21:42 #13
Det er jo omtrent det vi startede med, er det ikke?
Avatar billede jtbroad Nybegynder
03. maj 2005 - 08:49 #14
sådan cirka du kan ikke brug * i selecten og from sætning skal være rigtigt jo.
Avatar billede ldanielsen Nybegynder
03. maj 2005 - 11:02 #15
insert into database1..tabel1
select * from database2..tabel1

vil virke hvis kolonnestrukturen er helt ens i de to tabeller
Avatar billede capaj Nybegynder
03. maj 2005 - 12:51 #16
Hej Hundevennen,

bliver lige nød til at pointere at ldanielsen har haft fat i den lange ende lige fra starten!!! Der kan være flere årsager til at det ikke fungerer:
- Enten har dine tabeller ikke samme struktur (som nævnt tidl.)
- Ligger på 2 forskellige servere og du har ikke link mellem dem
- Sikkerhed/rettigheds spørgsmål...

/CAPAJ
Avatar billede hundevennen Nybegynder
09. april 2006 - 11:07 #17
?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester