summera summan i en kolumn

Databaser & SQL

3 svar · 448 visningar · startad av Bosse168

Medlem sedan nov. 20031 018 inlägg
Trådstart#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?

247 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)