Avatar billede gittemadsen Nybegynder
13. marts 2003 - 22:36 Der er 12 kommentarer og
1 løsning

select og insert

Hej

kan man selecte fra flere tabeller i en database og så sætte dem ind i forskellige tabeller i en database, eller skal man selecte fra hver tabel i den ene database for at kunne lægge dem ind i samme tabeller bare i en anden database på en anden pc?
Avatar billede ztyxx Nybegynder
13. marts 2003 - 22:38 #1
vil du flytte data og tabeller fra en database til en anden??
Avatar billede ztyxx Nybegynder
13. marts 2003 - 22:43 #2
hvis det er det du mener, kan du tage dumps af struktur og data med MySQLFront, download:
http://mysqlfront.venturemedia.de/index.php?s=9503bf12672368f1fd43045383a76713&act=ST&f=2&t=328
Avatar billede gittemadsen Nybegynder
13. marts 2003 - 22:57 #3
Nej jeg vil bare flytte data fra nogle tabeller i en database og indsætte dem i noglelunde samme tabeller i en anden database, mit spøgsmål er:
Hvis man siger select * from vare, lager, forecast where leverandorid = 1;
kan man så i den anden database indsætte ved
insert into vare, lager, forecast values(dem der er hentet), eller skal man lave flere insert sætninger og hvordan deler man så den enkelte select sætning ud til insertssætninger....
Avatar billede ztyxx Nybegynder
13. marts 2003 - 23:00 #4
nu ved jeg ikke hvilket sprog du henter data med, men er det php, kan du bruge phpMyAdmin til at lave dumps af data, så kan du indsætte med de dumps, ellers kan MySQLFront gøre det samme
Avatar billede larildsen Nybegynder
14. marts 2003 - 09:21 #5
insert into <TABEL1> select <kolonne1>,<kolonne2> from <TABEL2>
TABEL2 kan så evt. skrives som <DATABASE>.<OWNER>.<TABEL>
Avatar billede larildsen Nybegynder
14. marts 2003 - 09:22 #6
Men du kan ikke i et statement indsætte i flere tabeller så vidt jeg ved
Avatar billede larildsen Nybegynder
14. marts 2003 - 09:24 #7
Jo selvfølgelig kan du det
Avatar billede larildsen Nybegynder
14. marts 2003 - 09:25 #8
Sludder, nu vrøvler jeg
Du kan indsætte i en tabel, men selecte fra flere
Avatar billede gittemadsen Nybegynder
14. marts 2003 - 20:42 #9
Det er i java, som skal hente fra en mysql database og over rmi til et andet java program som skal ligge det i en anden mysql database.
Ok så nu har vi fastslået at man kan ikke indsætte i samme sql sætning...

Kan man så hente i en sql sætning fra 3 tabeller og så derefter splitte det op og ligge ned i 3 tabeller, eller skal man hente fra 3 tabeller for at kunne lægge det i 3 tabeller, det skal lige siges at tabeller er ens, det er en slags backup der laves.
Avatar billede arnvig Nybegynder
14. marts 2003 - 20:47 #10
du kan kun lave insert i 1 tabel pr. SQL, men du kan lave select fra så mange du vil (eller din maskine kan klare)
Avatar billede gittemadsen Nybegynder
14. marts 2003 - 20:52 #11
Jeps det har jeg forstået, men kan man samle og opdele jvf. nedenstående:

Kan man så hente i en sql sætning fra 3 tabeller og så derefter splitte det op og ligge ned i 3 tabeller, eller skal man hente fra 3 tabeller for at kunne lægge det i 3 tabeller, det skal lige siges at tabeller er ens, det er en slags backup der laves.
Avatar billede arnvig Nybegynder
17. marts 2003 - 11:24 #12
Hvis tabellerne du udtrækker fra er ens (eller næsten ens) kan du evt lave en UNION mellem flere tabeller:

INSERT
INTO <tabel>
SELECT felt1,felt2,felt3...Feltn
FROM <tabel1>
WHERE <kriterie>
UNION
SELECT felt1,felt2,felt3...Feltn
FROM <tabel2>
WHERE <kriterie>
UNION
SELECT felt1,felt2,felt3...Feltn
FROM <tabel3>
WHERE <kriterie>

Du skal bare sørge for at antallet af felter og felttyperne er ens i de 3 selectede tabeller og i insert tabellen
Avatar billede gittemadsen Nybegynder
20. marts 2003 - 16:50 #13
pyt med det, vi laver en anden løsning. Men tak for hjælpen
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