Avatar billede kroger Nybegynder
19. februar 2003 - 21:54 Der er 13 kommentarer og
1 løsning

Select where ....

Jeg har lidt problemer med en forspørgsel til en MSSQL database.

Denne linje kode:

pstChange = "Select TOP 8 * From nyheder WHERE kategori = '" & nyhedskategori & "' AND gammel <> 'ja' Order by id desc;"

Når stykket  AND gammel <> 'ja' er inkluderet hiver den ingenting frem.

Meningen er at den ikke skal tage dem der har ordet ja i rækken gammel med, hvis det ikke lige skulle fremgå...
Avatar billede medions Nybegynder
19. februar 2003 - 21:56 #1
pstChange = "Select TOP 8 * From nyheder WHERE kategori = '" & nyhedskategori & "' AND NOT gammel = 'ja' Order by id desc;"

//>Rune
Avatar billede kroger Nybegynder
19. februar 2003 - 21:59 #2
Den er kold, der kommer stadig ikke noget (og jo, der skulle dukke ca. 20 ting op som ikke indeholder en værdi i gammel rækken ;))
Avatar billede casualty Nybegynder
19. februar 2003 - 22:09 #3
pstChange = "Select TOP 8 * From nyheder WHERE kategori = '" & nyhedskategori & "' AND gammel != 'ja' Order by id desc;"
Avatar billede kroger Nybegynder
19. februar 2003 - 22:11 #4
Desværre...:(
Avatar billede eagleeye Praktikant
19. februar 2003 - 22:20 #5
Hvis du fjerner "AND gammel <> 'ja'" tager den så alle ud, både hvor gammel er lig 'ja' og hvor gammel er forskellig fra 'ja'?
Avatar billede casualty Nybegynder
19. februar 2003 - 22:20 #6
Har du ikke overvejet at give dit "gammel" felt en true/false værdi i stedet for...Det tror jeg ville være lettere??
Avatar billede -master-d- Nybegynder
19. februar 2003 - 22:46 #7
Virker altså her.
Kan du måske glemt andet ???

-Master-D-
Avatar billede hossein Nybegynder
19. februar 2003 - 22:47 #8
Feltet må ikke være af typen Char. Da du bruger MSSQL så datatypen for denne felt må være Bit. Hvis du vælger Bit så skal du bruge 1 = ja og 0 = nej
Avatar billede -master-d- Nybegynder
19. februar 2003 - 22:50 #9
Er Char ikke et tekstfelt ?
Der tjekkes jo blot for om teksten "ja" står i feltet.
Avatar billede -master-d- Nybegynder
19. februar 2003 - 22:54 #10
Skal lige siges at jeg brugte en Access DB og ikke en SQL, men princippet burde være det samme.
Avatar billede kroger Nybegynder
20. februar 2003 - 05:50 #11
Feltet er af typen char, og char er bare et tekstfelt, bruger det i lignende where klausuler andre steder hvor det funger fint.
Jeg prøver det med bit imorgen og ser om det hjælper.

Og eagleeye, ja hvis jeg fjerner and gammel delen hiver den bare alt ud (det som selvføljelig passer til kategori betingelsen...)
Avatar billede eagleeye Praktikant
20. februar 2003 - 09:11 #12
Det lyder underligt at den ikke bare hiver noget ud hvis du AND'er med <> 'ja'. Prøv at sætte () omkring sådan her, måske det hjælper:


pstChange = "Select TOP 8 * From nyheder WHERE (kategori = '" & nyhedskategori & "') AND (gammel <> 'ja') Order by id desc;"
Avatar billede -master-d- Nybegynder
20. februar 2003 - 20:19 #13
Det syntes jeg lyder meget mærkeligt.
Kan det muligvis have noget med feltet gammel at gøre, altså står der direkte 'ja' eller 'nej' i feltet?
Avatar billede kroger Nybegynder
20. februar 2003 - 22:41 #14
Hossein havde ret, jeg skiftede til bit, og vupti så er den lykkelig, meget mærkeligt. Men nu virker den, i skal have tusinde tak for hjælpen.
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
Kurser inden for grundlæggende programmering

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