Jag är väldigt osäker på om detta är rätt forum men..
Är det någonting som har ändtats i Access databas?
Jag använder mig av Access via gamla hederliga ASP, och har inte
haft några som helst besvär, tvärs om den har fungerat otroligt bra.
Bl a har jag en väldigt inveklad SQL(fick hjälp med den härifrån), som har fungerat klockrent. I dag så får jag ett error (både lokalt och via webservern)
Microsoft JET Database Engine error '80004005'
At most one record can be returned by this subquery.
SELECT t_Album.Bild, t_Album.Album, s.songtitel AS Sångtitel,
(SELECT TOP 1 namn FROM t_songforfattare INNER JOIN t_forfattare ON t_songforfattare.for_id =
t_forfattare.for_id WHERE ArrNo = s.ArrNo ORDER BY t_songforfattare.for_id ASC) AS Författare,
(SELECT TOP 1 namn FROM t_songforfattare INNER JOIN t_forfattare ON t_songforfattare.for_id =
t_forfattare.for_id WHERE ArrNo = s.ArrNo AND t_songforfattare.for_id >
(SELECT TOP 1 for_id FROM t_songforfattare WHERE ArrNo =
s.ArrNo ORDER BY for_id ASC) ORDER BY t_songforfattare.for_id ASC) AS Författare2,
(SELECT TOP 1 namn FROM t_songforfattare INNER JOIN t_forfattare ON t_songforfattare.for_id =
t_forfattare.for_id WHERE ArrNo = s.ArrNo AND t_songforfattare.for_id >
(SELECT TOP 1 for_id FROM t_songforfattare WHERE ArrNo =
s.ArrNo AND t_songforfattare.for_id >
(SELECT TOP 1 for_id FROM t_songforfattare WHERE ArrNo =
s.ArrNo ORDER BY for_id ASC) ORDER BY t_songforfattare.for_id ASC)) AS Författare3
FROM t_songtitlar AS s INNER JOIN t_Album ON s.Album =
t_Album.CD_ID
Det märkvärdiga är att den fungerade igår, och jag har inte gjort
några uppdateringar eller insert.
Jag har hittat felet, justerat i databasen, så fungerar detta.
Orsaken till dubbleterna blev, att jag inte har fått till det i ett
antal option-listor.
I min SQL så får jag fram namn/en på författaren.
I optionboxen, så loppar jag fram alla namnen i databasen. Det
jag ville ha fram, är om namnet i loopen är samma som i SQL:en
så skall namnet i optionboxen vara selectad.(hoppas att det inte låter för krångligt).
'rst("Författare") är variabel ifrån den stora SQL:en här ovan.
'RS2("Namn") ifrån en SQL som loppar igenom namnen på alla
författarna.
<select CLASS="SKUGGA" SIZE="1" Style ="width: 120" NAME="Forfattare">
<option></option>
<% Do While Not RS2.EOF
on error resume next
if(RS2("Namn"))=rst("Författare") then
sel="selected"
err.cleare
end if
%>
<option <%=sel%> value="<% = RS2("For_Id") %>"><% = RS2("Namn") %></option>
<% RS2.movenext
loop %>
<option value=""></option>
</select>
Borde inte detta fungera??(Jag får upp fel namn hur jag än gör.
Reponse.Write("<option ")
If rst("Författare") = RS2("Namn") Then
Response.Write("selected ")
End If
Response.Write("value='" & RS2("For_Id") & "'>" & RS2("Namn") & "</option>")
140 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe