Att kolumnen kommentar finns definierad i mer än en av de tabeller som förekommer i fromklausulen. Du får kvalificera kolumnnamnet med lämpligt tabellnamn.
Jag har tittat lite närmare på din fråga. Det är väldigt sällan man behöver både distinct och group by och i ditt fall tror jag att bådadera är onödiga. Det behövs heller ingen having då den typen av villkor skall anges i where. Sen så är dina joinuttryck konstiga,det är lättare att se om man skriver
from a join b on ...
join c on ...
Jag skulle skriva din fråga som
SELECT
username,
vemKollar,
anvandare,
bild,
rubrik,
inlagd,
kommentar,
nytt,
Postad,
bildID,
picture
FROM tblUsers u
INNER JOIN tblUsers_Galleri_kommentar gk ON
u.userID = gk.vemKollar
inner join tblUsers_galleri g on
gk.bildID = g.bildID
and gk.agare = g
where gk.bildID= & ID
AND gk.agare= & uid &
ORDER BY Postad DESC
och sedan så skulle jag kvalificera alla kolumner i select-listan. (Jag ger mig inte på det då jag inte vet något om dina tabelldefinitioner.)
<%if bildRS.eof then
response.write "<span class=""presentation1"">Inga bilder finns inlagda</span><br>"
do until bildRS.EOF%>
Jag förstår inte hur det kan ha fungerat med Access.
<%if bildRS.eof then
response.write "<span class=""presentation1"">Inga bilder finns inlagda</span><br>"
else
do until bildRS.EOF%>
Microsoft OLE DB Provider for ODBC Drivers error '80040e31'
[MySQL][ODBC 3.51 Driver][mysqld-4.0.25-max]Unknown table 'tblUsers_galleri_kommentarer' in field list
/Gallery/viewComment.asp, line 14
Set kommentarRS=objConn.Execute("SELECT username, vemKollar, anvandare, bild, rubrik, inlagd, tblUsers_galleri_kommentarer.kommentar, nytt, Postad, bildID, picture FROM tblUsers u INNER JOIN tblUsers_Galleri_kommentar gk ON u.userID = gk.vemKollar inner join tblUsers_galleri g on gk.bildID = g.bildID and gk.agare = g where gk.bildID="& ID &" AND gk.agare="& uid &" ORDER BY Postad DESC")
I din select-sats plockar du ut 'kommentar'. Precis som LarsG tidigare skrev måste det kolumnnamnet förekomma i minst två av de tabeller du joinar. Du måste alltså tala om vilken du vill ha ut.
nu har jag crosscheckat båda galleritabellerna och det verkarstämma men jag får ändå
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[MySQL][ODBC 3.51 Driver][mysqld-4.0.25-max]Unknown column 'g' in 'on clause'
/Gallery/viewComment.asp, line 15
SELECT u.username, gk.vemKollar, gk.anvandare, g.bild, "&_
"g.rubrik, g.inlagd, gk.Kommentar, gk.nytt, gk.Postad, gk.bildID, u.picture "&_
"FROM tblUsers u "&_
"INNER JOIN tblUsers_Galleri_kommentar gk ON u.userID = gk.vemKollar "&_
"INNER JOIN tblUsers_galleri g on gk.bildID = g.bildID and gk.agare = g "&_
"WHERE gk.bildID="& ID &" AND gk.agare="& uid &" ORDER BY gk.Postad DESC
tabell gk
bildID int(11) Ja 0
vemKollar int(11) Ja 0
anvandare char(50) Ja NULL
agare int(11) Ja 0
Kommentar char(255) Ja NULL
Postad datetime Ja NULL
nytt tinyint(1) Ja NULL
tabell g
bildID int(11) Nej auto_increment
agare int(11) Ja 0
bild varchar(50) Ja NULL
inlagd datetime Ja NULL
rubrik varchar(50) Ja NULL
kommentar longtext Ja NULL
clicks varchar(50) Ja 0
Det enda jag säger är att när du hänvisar till ett fält så måste du ange tabellens alias istället för tabellnamnet, om du har gett tabellen ett alias. g är ett tabellalias, inte ett fältnamn som du försöker säga att det är.
Det enda jag säger är att när du hänvisar till ett fält så måste du ange tabellens alias istället för tabellnamnet, om du har gett tabellen ett alias. g är ett tabellalias, inte ett fältnamn som du försöker säga att det är.
Förlåt mig @nders, det var LarsG som skrev *skäms*