Avatar billede codebase Praktikant
12. januar 2001 - 11:26 Der er 8 kommentarer og
2 løsninger

retunere rækkenummer efter en insert !

Hvordan kan jeg få retuneret det rækkenummer, en insertkomande har indsat mine data i tabellen ???

Det kan vel ikke være rigtigt at jeg skal lave en select lige efter jeg har lavet en insert ??

eks:
insert into tabel bla.. bla...
select from tabel where bla.. =\'bla..\' and bla.. =\'bla\' osv ??


-codeb@se

Avatar billede steffen Nybegynder
12. januar 2001 - 11:35 #1
Avatar billede beaviz Nybegynder
12. januar 2001 - 12:03 #2
LAST_INSERT_ID
Avatar billede codebase Praktikant
12. januar 2001 - 12:11 #3
hvordan vil koden se ud?

mysql_query(\"insert into tabelen(kollonenavn1, kollonenavn2)  values (\'$variabel1\',\'$variabel2\')\") or die(mysql_error());
mysql_LAST_INSERT_ID  ?????????


Avatar billede beaviz Nybegynder
12. januar 2001 - 12:25 #4
ahh, det er i php, så gør som steffen anbefaler...
$db = mysql_pconnect(\"mysql.domain.dk\", \"username\", \"password\");
$result = mysql_query(\"insert into tabelen(kollonenavn1, kollonenavn2)  values (\'$variabel1\',\'$variabel2\')\", $db);
  or die (\"Invalid query\");
$min_nye_auto_increment_value = mysql_insert_id($db);

- husk at du skal have et \"auto_increment\" felt i din tabel :)
Avatar billede codebase Praktikant
12. januar 2001 - 12:35 #5
jeps, jeg har også været inde og se på den :)

jeg uddeler points til jer begge, hvis det virker :)

-codeb@se
Avatar billede codebase Praktikant
12. januar 2001 - 12:43 #6
hmm..

Hvor skal jeg connecte igen, jeg er jo i forbindelse med databasen ?

kan jeg ikke bare skrive:
mysql_insert_id($db);

Hvor ved den, hvilke tabel den skal kigge i ?


Avatar billede beaviz Nybegynder
12. januar 2001 - 12:51 #7
Ja, bare brug mysql_insert_id($db), jeg ville bare illustrere \"hele\" processen.

- hvilken tabel den skal kigge i, se DEN var interessant.. jeg ved det ikke :)
Avatar billede steffen Nybegynder
12. januar 2001 - 12:53 #8
Det er for hele databasen - for den aktuelle forbindelse - så hvis du senere har lavet en anden insert i en anden tabel - ja, så er det altså det ID du får - det bliver hele tiden overskrevet af seneste insert. Derfor gælder det også om at fyre den af så hurtigt som muligt efter det insert man vil have id på.

Simpelt nok når man lige fanger den.
Avatar billede codebase Praktikant
12. januar 2001 - 13:03 #9
det virker jo :)
Avatar billede codebase Praktikant
12. januar 2001 - 13:06 #10
så skriver man en tekst, og trykker på: avanceret, for at se at ens tekst er skrevet og man ikke har nået at give points :)

Men vi prøver lige igen !!!!

Tak for hjælpen........

-codeb@se
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