webForumDet fria alternativet

Hur förhindra knas vid tomma fält?

ASP

1 svar · 175 visningar · startad av solbulle

Medlem sedan mars 20015 287 inlägg
Frågan#1

Jag har börjat riva lite i gammal kod.
När jag kör denna och en del poster saknas i db kraschar det. (Låser sig - timeout)

Vilka fält måste det egentligen vara data i för att det ska fungera?
Vad kan jag göra för att förhindra krasch? (Förutom att se till att alla fält i db verkligen är ifyllda.)

Övriga förslag på generella kodförbättringar mottages tacksamt.
(Accessdb)

SQL = "SELECT  fld_o_title, o.fld_o_id, fld_p_firstname, fld_p_lastname, fld_mt_name, fld_mt_id FROM " &_
" ((tbl_movie_title mt inner join tbl_movie m " &_
"on mt.fld_mt_id = m.fld_m_mtid) " &_
" left outer join " &_
"tbl_occupation o on o.fld_o_id = m.fld_o_id) " &_
" left outer join " &_
"tbl_person p on p.fld_p_id = m.fld_p_id ORDER BY iif((fld_p_lastname is null OR o.fld_o_id = 4) ,1,0), fld_p_lastname, fld_mt_name"

Call tableloop4("fld_p_lastname","fld_mt_id","fld_mt_name")

Sub tableloop4(field1,field2,field3)

DB_koppling

set rs = connect.execute(sql)

pgenre = ""

	response.write "<TABLE><TR>"

while not rs.eof

If  rs(field1) <> "" then

	if  pgenre <> rs(field1) then
		pgenre = rs(field1)
		pgenrearr = rs(field2) & "," & pgenrearr
		response.write "<TD>"
      	response.write "<font color='RED'><b>" & pgenre & "</b></font>"
		response.write "</TD>"
	Else 
		response.write "<TD></TD>" & vbcrlf
  	End If

		If  rs(field1) <> "" then
			pgenrearr = rs(field2) & "," & pgenrearr
			response.write "<TD>"
			response.write"<a class=film href=""" & strScriptname & "?id=" & rs(field2) & """>" & rs(field3) & "</a><br>"
			response.write "</TD>"
			response.write "</TR>"  & vbcrlf
		End If
End If

 rs.movenext
wend

response.write "<p>"

rs.movefirst

pgenrearray = split(pgenrearr,",") 

		response.write "<TR>"
		response.write "<TD>&nbsp;</TD>" & vbcrlf
		response.write "<TD>&nbsp;</TD>" & vbcrlf
		response.write "</TR>"  & vbcrlf

pgenre = "Ej angett."

while not rs.eof

shit = "no"

For i = 0 To Ubound(pgenrearray)
  If cstr(rs(field2)) = pgenrearray(i) Then
	'Shit, skriv inte ut.
	shit = "yes"
  End If
Next

If shit = "no" then
  if  pmt_name <> rs(field3) then
      pmt_name= rs(field3)

	response.write "<TD>" & pgenre & "</TD>" & vbcrlf
	response.write "<TD>"
	response.write"<a class=film href=""" & strScriptname & "?id=" & rs(field2) & """>" & rs(field3) & "</a><br>"
	response.write "</TD>"
	response.write "</TR>"  & vbcrlf

  End If
End If

pgenre = ""

  rs.movenext
wend
	response.write "</TABLE>"
	DB_close
End Sub
%>
Medlem sedan mars 20015 287 inlägg
#2

Hm... vi kanske ska avakta lite med den... kanske är det inte helt rätt sql-fråga kanske, kanske....

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