Jag har tidigare kört med denna:
(Nu slutade tab att fungera, hoppas att ni kan läsa koden ändå...)
sAntAvk =
" SELECT COUNT (*) AS ant " & _
" FROM tabell " & _
" WHERE e = " & id & " " & _
" OR u = " & id & " "
rsAntAvk.Open sAntAvk, MinCon
intAntAvk = CInt(rsAntAvk(0))
rsAntAvk.Close
Men nu när jag bytt DB fungerar den inte.
Check the manual that corresponds to your MySQL server version for the right syntax to use near '(*) AS ant FROM tabell WHERE e =
Blir felmedelandet.
id, e och u har jag satt som INT. Vet inte om det är det som är fel?
@ndersMedlem sedan juni 200032 969 inlägg Skriv ut den färdiga SQL-frågan istället för att exekvera den, då kan du se om det är något värde som saknas. Antagligen har inte id något värde, och då är det därför du får felmeddelandet.
(Om jag var du skulle jag rensa bort all onödig whitespace i SQL-frågan)
Mvh
Ett id-värde får jag in. syntax to use near '(*) AS ant FROM tabell WHERE e = 133 OR...
Mellanslagen satt jag bara dit för att tab slutade att fungera och det såg så kluddrigt ut ;)
@ndersMedlem sedan juni 200032 969 inlägg Hur ser alltså den fullständiga SQL-frågan ut?
sAntAvk = " SELECT COUNT (*) AS ant FROM tabell WHERE e = " & id & " OR u = " & id & " "
rsAntAvk.Open sAntAvk, MinCon
intAntAvk = CInt(rsAntAvk(0))
rsAntAvk.Close
id kommer in, det kan jag skriva ut också. Det är alltså meningen att det ska räknas hur många gånger id förekommer i e och u.
(You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(*) AS ant FROM tabell WHERE e = 133 OR u = 133' at line)
Jag har kört SELECT COUNT (*) på en annan sida och det gick hur bra som helst... Måste vara nått annat som är blurrigt...
@ndersMedlem sedan juni 200032 969 inlägg Av den kod du visar kan jag inte förstå felmeddelandet, jag tycker inte att SQL-frågan är syntaxmässigt felaktig. Dock väntar jag fortfarande på en utskrift av den färdiga SQL-frågan för att vara säker på vad jag säger.
SELECT COUNT (*) AS ant FROM tabell WHERE e = 133 OR u = 133
solbulleMedlem sedan mars 20015 287 inlägg Iofs kanske inte det som är felet, men mellanslaget som hakas på längst bak lär ju inte behövas.
sAntAvk = " SELECT COUNT (*) AS ant FROM tabell WHERE e = " & id & " OR u = " & id
Tyvärr det hjälpte inte... Men jag önskade ;) Jag har kollat alla namn och det stämmer. Allt är satt som INT också, så det är inget typfel. (?eller?) Månne är det att den ska kolla samma värde i båda kolumnerna?
LarsGMedlem sedan dec. 200012 464 inlägg Mysql tillåter inte att man har blank mellan funktionsnamn och parentes.
SELECT COUNT(*)
Sopprötter (de som implementerar Mysql alltså.)
Flyttas från ASP.
K@llenMedlem sedan mars 20032 667 inlägg
LarsG skrev:
Mysql tillåter inte att man har blank mellan funktionsnamn och parentes.
SELECT COUNT(*)
Sopprötter (de som implementerar Mysql alltså.)
Flyttas från ASP.
Säker på detta? Jag la också märke till det mellanslaget, men eftersom jag var osäker på om det hade betydelse testade jag här hemma och det fungerade även med mellanslag. Kanske fixat i de senare versionerna? Själv kör jag 4.01.
Faktiskt så var det så jäkla enkelt... På den andra sidan jag hade så hade jag inget mellanslag och reagerade inte över det heller. Jag har tagit bort mellanslag mellan allting bara för att testa utom just där... Vad säger man? *sucka*
Tack!!
K@llenMedlem sedan mars 20032 667 inlägg
Zerephina skrev:
Faktiskt så var det så jäkla enkelt... På den andra sidan jag hade så hade jag inget mellanslag och reagerade inte över det heller. Jag har tagit bort mellanslag mellan allting bara för att testa utom just där... Vad säger man? *sucka*
Tack!!
Får man fråga vilken mysql-version du använder?
Nu har jag problem med samma sak. DBMS är Mysql 4.1.
Får felmeddelandet:
Inkompatibla typer
Koden ser ut såhär:
<%
If isNumeric(Session("usrPerm")) AND Session("usrPerm") > 1 Then
Dim oConn
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open dbConn
sSql = "SELECT COUNT(menuID) FROM tbl_admMenu WHERE usrPerm < " & Session("usrPerm") & " OR usrPerm = " & Session("usrPerm")
' Response.Write(sSql) : Response.End
Set rs = oConn.Execute(sSql)
If Not rs.EOF Then menuBlocks = rs(0) Else Response.reDirect("logout.asp") End If
If Session("usrId") = superUsr Then addBlock = 2 Else addBlock = 1 End If
%>
<script type="text/javascript">
<%
[b]Response.Write("var FoldNumber = " & menuBlocks + addBlock & ";" & VbCrLf)[/b]
Set rs = Nothing
Else
Response.reDirect("logout.asp")
End If
%>
Den fetstilta raden ovan är raden felet uppstår på.
Frågan skrivs ut helt rätt, nämligen såhär:
SELECT COUNT(menuID) FROM tbl_admMenu WHERE usrPerm < 3 OR usrPerm = 3
Några förslag?
Tack!