webForumDet fria alternativet

SQL-sats fungerar inte med nya MySQL?

4 svar · 424 visningar · startad av Bosse168

Bosse168Medlem sedan nov. 20031 018 inlägg
#1

Använde denna SQL-sats mot en databas som körde MySQL 3.23 som nu är uppdaterad till nyaste versionen (5.1 GA) och nu fungerar inte längre denna SQL-satsen till paging scriptet:

SQL="SELECT forum_inlagg.*, bild_godkand,bild,fnamn,kon,foddes,members.status FROM forum_inlagg INNER JOIN members ON (forum_inlagg.memb = members.username) " & _
" WHERE svarID="& cInt(id) & _
" ORDER BY forum_inlagg.datum LIMIT " & iStart & " ," & iPageSize & ""

Så här ser SQL-satsen ut om jag skriver ut den:
SELECT forum_inlagg.*, bild_godkand,bild,fnamn,kon,foddes,members.status FROM forum_inlagg INNER JOIN members ON (forum_inlagg.memb = members.username) WHERE svarID=1119 ORDER BY forum_inlagg.datum LIMIT -20 ,20

nitro2k01Medlem sedan aug. 20039 342 inlägg
#2

LIMIT -20 ser fel ut.
Får du för övrigt ut något felmeddelande?

Bosse168Medlem sedan nov. 20031 018 inlägg
#3

Microsoft OLE DB Provider for ODBC Drivers fel '80040e14'
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 '-20 ,20' at line 1
/forum/inc_post.asp, rad 282

Och det är raden för SQL-satsen

nitro2k01Medlem sedan aug. 20039 342 inlägg
#4

Som jag trodde då. LIMIT -20 är problemet. LIMIT 0,20 börjar ju från post 0. LIMIT 10,20 börjar från post 10. Men -20 hamnar ju innan resultsetets början. Ser du problemet?

Bosse168Medlem sedan nov. 20031 018 inlägg
#5

Jajemän det hade du väldigt rätt i. :)
Gör jag så här så funkar det:

iRecords = ""&Rs2(0)&""

Men inte såhär:

iRecords = Rs2(0)

Jag hämtar ut infon i en vanlig RecSet och svarID är av typen int(11), skummt...

SQL="SELECT COUNT(id) " & _
" FROM forum_inlagg " & _
" WHERE svarID="& id

Set Rs2 = Connect.Execute(SQL)
126 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)