14. januar 2001 - 21:05Der er
7 kommentarer og 1 løsning
Hvordan gemmer man nemt vedr. auto_increment
Jeg har gang i en database hvor der er et id-felt der er sat som auto_increment. Da jeg gerne vil vide hvilken værdi den er kommet til, inden jeg indsætter værdien, skal jeg bruge en måde at gemme outputtet fra \"select last_insert_id()\". Så vidt jeg har forstået det slettes last_insert_id, ihvertfald når jeg forlader databasen. Derfor vil jeg gerne gemme værdien i en tabel. Hvordan vil man nemmest kunne gøre det? Kan man lave noget flettet halløj, ligesom: insert into ids (last_id) values(Select last_insert_id());
Tak for de hurtige svar. Jeg tror ikke helt at det er det jeg leder efter. Hvis jeg har en database med følgende indhold: mysql> select * from test; +----+---------------------+ | id | tekst | +----+---------------------+ | 1 | Dette er den første | | 2 | Dette er den anden | | 3 | Dette er den tredje | | 95 | Dette er en anden | +----+---------------------+
Her er de første 3 indsat vha: insert into test values (NULL, \'tekst\');
men den sidste er indsat vha: insert into test values (95, \'tekst\');
her vil \"select max(id) from test\" give værdien 95, mens \"select last_insert_id()\" giver 3.
Da jeg skal bruge det i et php-script, hvor den jo for hver sideeksponering laves en ny forbindelse til databasen, har jeg brug for en metode til at gemme last_insert_id() værdien i en anden tabel.
Jeg leder mere efter en ren SQL-måde at \"pipe\" resultatet fra select last_insert_id() over i en update kommando. erikjacobsen >> Jeg lader spørgsmålet stå åbent i et par dage. Hvis der ikke er andre svar er pointene dine.
insert into ... insert into temp (c) values (last_insert_id())
Synes godt om
Ny brugerNybegynder
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.