Avatar billede webben Nybegynder
10. november 2001 - 11:58 Der er 11 kommentarer og
1 løsning

Sql sætning!!!!

hej eksperter

Jeg har nogle problemer med en sql sætning... Den funktion skal være følgende:


Den skal tage alle poster fra en tabel(dagbog) hvor feltet hemlig = no! Men den skal
også tage alle dem fra tabel(dagbog) hvor feltet hemlig = yes hvis brugeren findes i en
anden tabel der hedder venner. Der skal ven\'ens navn stå udfor ens eget brugernavn.
ens brugernavn har jeg i en session der hedder brugernavn.

Er der nogen der kan hjælpe mig. Jeg vil gerne se lidt dokumentation på det der bliver
lavet ellers for man ikke fuld point. for et rigtig svar gives 500 point.

/webben
Avatar billede stigc Nybegynder
10. november 2001 - 12:21 #1
SELECT * FROM dagbog
WHERE (hemlig=\'no\' OR (hemlig=\'yes\' AND brugernavn IN (SELECT ven_brugernavn FROM venner WHERE brugernavn=\'\" % session(\"brugernavn\") & \"\'))\"
Avatar billede webben Nybegynder
10. november 2001 - 13:05 #2
jeg kigger lige på det!
Avatar billede webben Nybegynder
10. november 2001 - 13:37 #3
hmmm, jeg tror der var et forståelses problem da sql sætningen ikke ser helt rigtig ud... Har følgende ting i min venner tabel:

[bruernavn][brugerid][ven][venid]

brugernavn er ens brugernavn
brugerid er ens id
ven er venens brugernavn
venid er venens id

den må kun udskrive dem med \"yes\" hvis man er ven med brugeren. det vil sige at hvis jeg var ven med \"karlåge\" så kan jeg se hans dagbog også selvom hans dagbog er hemlig!!!

Er det nemmere nu?
Avatar billede stigc Nybegynder
10. november 2001 - 13:42 #4
SELECT * FROM dagbog
WHERE (hemlig=\'no\' OR (hemlig=\'yes\' AND brugernavn IN (SELECT ven FROM venner WHERE brugernavn=\'\" % session(\"brugernavn\") & \"\'))\"

Der er sådan set ikke så meget nyt nu ved jeg bare det hedder \"ven\" i stedet for \"ven_brugernavn\"

Du burde sammelinge på Id\'erne i stedet for.
Avatar billede webben Nybegynder
10. november 2001 - 13:57 #5
sammeligne????

in query expression \'hemlig=\'no\' OR hemlig=\'yes\' AND brugernavn IN (SELECT ven FROM venner WHERE brugernavn=\'test\'))\'
Avatar billede webben Nybegynder
10. november 2001 - 13:58 #6
der melder den fejl
Avatar billede stigc Nybegynder
10. november 2001 - 14:37 #7
hvilken database bruger du?

Der var vist også en parantesfejl:

SELECT * FROM dagbog
WHERE hemlig=\'no\' OR (hemlig=\'yes\' AND brugernavn IN (SELECT ven FROM venner WHERE brugernavn=\'\" % session(\"brugernavn\") & \"\'))\"
Avatar billede webben Nybegynder
10. november 2001 - 14:43 #8
access databaser
Avatar billede stigc Nybegynder
10. november 2001 - 14:45 #9
hvad siger den til:

SELECT * FROM dagbog
WHERE hemlig=\'no\' OR (hemlig=\'yes\' AND brugernavn IN (SELECT ven FROM venner WHERE brugernavn=\'\" % session(\"brugernavn\") & \"\'))\"

?
Avatar billede webben Nybegynder
10. november 2001 - 14:47 #10
den siger: Type mismatch: \'ven\'

men mit felt i databasen er hedder ven?
Avatar billede webben Nybegynder
11. november 2001 - 20:12 #11
lukker da spørgsmålet ikke er besvaret korrekt!
Avatar billede stigc Nybegynder
11. november 2001 - 22:54 #12
Tak for ingen ting. Det er svaret korrekt ud fra de oplysninger du har givet! Så må du kommme med nogen flere oplysninger...


SQL svarer så vidt jeg ved ikke Type mismatch: \'ven\', på nogen fejl, så du må have bytte om på nogen ting, hvis du havde vist ASP koden  havde jeg eller nogen andre nok fundet fejlen!

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