Avatar billede sjh Nybegynder
28. februar 2007 - 04:42 Der er 7 kommentarer og
1 løsning

INSERT INTO table1, table2 med LAST_INSERT_ID

Kan men ikke indsætte i 2 tabeller på en gang?

INSERT INTO users (email, firstname, username, lastdate, ipaddr) VALUES('Email', 'Name', 'User', 0, 'IpAddr')

INSERT INTO validate (dato, ipaddr, userid, validatekey) VALUES (0, 'IpAddr', LAST_INSERT_ID(), 'Activekey')

hvis man kan hvordan gør man så det?
Avatar billede barklund Nybegynder
28. februar 2007 - 08:27 #1
Indsætte hvorfra? Og du skal nok have et semikolon imellem dine to queries, men de fleste grænseflader (php, c med videre) tillader dig kun at køre én query per execute. Du kan dog snildt køre det i to queries.
Avatar billede sjh Nybegynder
28. februar 2007 - 08:45 #2
Hvis du ser på den her:

INSERT INTO forumm (qid, dato, username)
(SELECT id,UNIX_TIMESTAMP() AS dato, q.username FROM forumq q WHERE id=$_GET[qid]
AND q.username NOT IN (SELECT m.username FROM forumm m WHERE m.qid=$_GET[qid]))
UNION
(SELECT qid,UNIX_TIMESTAMP() AS dato, c.username FROM forumc c WHERE qid=$_GET[qid]
AND c.username NOT IN (SELECT m.username FROM forumm m WHERE m.qid=$_GET[qid]));

http://www.eksperten.dk/spm/764406

Den kan da godt bruge "INSERT INTO" flere gange i samme queries.. kan man så ikke lave det samme på en eller anden måde?
Avatar billede barklund Nybegynder
28. februar 2007 - 09:37 #3
Men den indsætter jo to forskellige datasæt i samme tabel - ikke to datasæt i hver sin tabel.
Avatar billede sjh Nybegynder
28. februar 2007 - 09:42 #4
Ja okææ, trode bare man kunne gøre det på en smart måde.. men ok..

smid et svar.
Avatar billede barklund Nybegynder
28. februar 2007 - 10:05 #5
Ved ikke lige hvilken smart måde det skulle have været :)
Avatar billede sjh Nybegynder
28. februar 2007 - 10:09 #6
Jo når jeg skal bruge LAST_INSERT_ID() så kan der jo være en anden som når og køre en INSERT INTO.. et andet sted.. og så vil det id jo komme på ;)

men OK tak for hjælpen..
Avatar billede barklund Nybegynder
28. februar 2007 - 10:51 #7
Nej selvfølgelig ikke - LAST_INSERT_ID er session-aware, så den vil selvfølgelig returnere det sidst genererede id for den session, du er tilkoblet :) - ikke php-session, men mysql-server-forbindelse-session.

--
Morten Barklund
Avatar billede sjh Nybegynder
28. februar 2007 - 10:55 #8
når så 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