Avatar billede daniel_d Nybegynder
19. december 2007 - 21:09 Der er 1 kommentar og
1 løsning

Not exists i insert into - muligt?

Hejsa

Jeg har et script der flytter brugerdata fra et forum til et andet, og har problemer med duplicate entry, altså flere ens brugernavne. Og dem er der mange af - så mange at det ikke giver mening at fjerne dem manuelt.

Jeg tænkte så om man kunne lave en form for INSERT WHERE NOT EXISTS i denne query, men kan sgu ikke hitte ud af det:

    // Add the user to the simpleboard usertable
    $query = "INSERT if not exists INTO `{$mosConfig_dbprefix}fb_users` (userid, posts, signature) VALUES ('$newuserid', '$row->user_posts', '$row->user_sig')";
    mysql_query($query) or die("<br />Invalid query9:<br />$query<br />" . mysql_error());

Håber der er nogle kloge hoveder derude :)
Avatar billede arne_v Ekspert
19. december 2007 - 21:17 #1
MySQL har faktisk en ON DUPLICATE UPDATE:
  http://dev.mysql.com/doc/refman/5.0/en/insert.html
som maaske kan bruges.

Kode som forsoeger en INSERT og haandterer hvis denne fejler er vel ogsaa en OK loesning.

Du kan evt. indsaette brugeren under et andet navn - hvis foobar eksisterer saa
proever du foobar2, foobar3 etc. indtil du faar ham gemt.
Avatar billede arne_v Ekspert
21. januar 2008 - 04:37 #2
OK ?
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