webForumDet fria alternativet

summera summan i en kolumn

Databaser & SQL

3 svar · 429 visningar · startad av Bosse168

Medlem sedan nov. 20031 018 inlägg
Frågan#1

Någon som vet varför denna koden har slutat fungerar efter en uppdatering av MySQL från 3.xx till 5.1.39-community?

Set Rs = Connect.Execute("select sum(char_length(message))/1024 FROM mailin WHERE till='"& strUsername &"'")

	Response.Write("Mailkorgens storlek: "& Rs(0) &" KB<br />")

Rs.Close : Set Rs=Nothing

message är av typen longtext.

Medlem sedan dec. 200012 464 inlägg
#2

Du kan börja med att förklara på vilket sätt det inte fungerar.

Medlem sedan nov. 20031 018 inlägg
#3

haha oj sorry missade jag det :r

fel '80020009'

Medlem sedan aug. 20039 340 inlägg
#4

Efter lite sökande verkar det som felet kan ha att göra med huruvida du använder en blob-typ för att lagra någon information. Problemet kan ev lösas av att du ändrar message från longtext till varchar.
Om det är ditt problem kan en annan eventuell lösning vara att lagra längden som ett separat int-fält och sedan köra sum på det fältet. Oavsett så tror jag inte sum(char_length(...)) är så bra prestanda-mässigt.

Har du för övrigt felsökt exakt var felet sker? T ex, får du samma fel om du plockar bort hämtandet av Rs(0)? Om du testar att bara selecta message?

267 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
132 ms — ändringar (db)