29. november 2003 - 21:36Der er
7 kommentarer og 1 løsning
SQL sætning som undersøger om hallen allerede er optaget
Jeg skal have lavet en SQL sætning som undersøger om hallen allerede er optaget.
Databasen består af: Dato, fra , til
Mit forslag som ikke virker.
SELECT * FROM booking WHERE dato='"&stDBhallen_bookingnr_dato&"' and fra > "&stDBhallen_bookingnr_kltil&" or dato='"&stDBhallen_bookingnr_dato&"' and fra = "&stDBhallen_bookingnr_kltil&" or dato='"&stDBhallen_bookingnr_dato&"' and til < "&stDBhallen_bookingnr_klfra&" or dato='"&stDBhallen_bookingnr_dato&"' and til = "&stDBhallen_bookingnr_klfra&";"
Da dato er defineret som tekst vil den sammenligne det som tekst og ikke dato'er så hvis der står 09-11-2003 i databasen skal der stå præsis 09-11-2003 i variablen stDBhallen_bookingnr_dato for den finder den.
Det som sikkert går galt er alle de OR's du har da den vil finde flere end den engenligt skal.. Så prøv at flytte lidt rundt på det sådan her. Det ser også ud som om der er byttet rundt på variablennavne omkring til og fra?:
SELECT * FROM booking WHERE dato='"&stDBhallen_bookingnr_dato&"' and fra >= "&stDBhallen_bookingnr_klfra&" and til <= "&stDBhallen_bookingnr_kltil&";"
Nu virker det som det skal, indtil vidre har ikke testede det fuldt ud men det ser rigtigt ud laver du ikke lige et svar så du kan få nogle point.. Jeg kunne ikke overskuge det til sidst... Men jeg troede ikke at man kunne lave en <= på en gang så var det jo nemt nok... Du få point
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.