Avatar billede eikhorsholm Nybegynder
04. september 2008 - 16:28 Der er 4 kommentarer

Insert if not exists.

Jeg har denne PHP/MySQL kode:

$view_query = mysql_query("SELECT COUNT(*) AS viewed FROM forum_views WHERE member = '$_SESSION[logon]' AND forum = '$_GET[id]'");
$view_array = mysql_fetch_array($view_query);
if ($view_array['viewed'] == 0) {
    mysql_query("INSERT INTO forum_views (member, forum) VALUES ('$_SESSION[logon]', '$_GET[id]')");
}

som tjekker om der findes en række, som betyder at en given bruger har set et givent indlæg.

Er det muligt i rent MySQL at indsætte rækken hvis den ikke findes i forvejen?
Avatar billede eikhorsholm Nybegynder
04. september 2008 - 16:34 #1
Er hvis man kan er det vel bedre performence-mæssig?
Avatar billede arne_v Ekspert
04. september 2008 - 16:35 #2
Saet et unique index paa (member,forum), lav INSERT og haandter fejl, hvis raekken
var der allerede.

Nej - jeg tror ikke at det performer bedre. Jeg antager at SELECT i de fleste tilfaelde vil finde
noget og saa er det hurtigst.
Avatar billede w13 Novice
07. september 2008 - 10:59 #3
eikshorsholm>> Du bør nok kigge dine gamle spørgsmål igennem. Lige nu har du omkring 100 ulukkede spørgsmål.
Avatar billede arne_v Ekspert
25. oktober 2008 - 23:12 #4
eikhorsholm ?
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