У меня есть классическая веб-страница ASP, которая извлекает данные из базы данных и отображает их в виде таблицы HTML.При некоторых обстоятельствах может не быть никаких данных, и я хочу перехватить эту ситуацию и отобразить информационное сообщение.Вот фрагменты моего кода:
MySite = "filedsn=" & Server.MapPath("/" & WebName & "/fpdb/reffiles/accessdsn.dsn") & ";DBQ=" & Server.MapPath("/" & WebName & "/fpdb/reffiles/my.mdb") & ";DefaultDir=" _
& Server.MapPath("/" & WebName & "/") & ";"
set MyDatabase = server.createobject("ADODB.Connection")
Mydatabase.open(MySite)
strSQLMin = "SELECT Format(Min(Date_Time),'dd/mm/yy') AS MinOfDate_Reading, Format(Min(INV_Bat), '###0.0') AS MinOfTempBat, " _
& "Format(Min(INV_tfmr), '###0.0') AS MinOfTempTransf, Format(Min(INV_FET), '###0.0') AS MinOfTempFET, " _
& "Min(BMK_soc) AS MinOfStateOfCharge, min(BMK_vdc) AS MinOfBatDCVolts, Format(Min(BMK_adc),'###0') AS MinOfBatDCAmps, " _
& "Min(INV_VACout) AS MinOfInvACVoltsOut, Min(INV_AACout) AS MinOfWInvACAmpsOut, format(Min(INV_VACin),'###0') AS MinOfInvACVoltsIn, " _
& "Format(Min(INV_AACin),'###0') AS MinOfInvACAmpsIn, Format(Min(INV_vdc),'###0') AS MinOfInvDCVolts, " _
& "Format(Min(INV_adc),'###0') AS MinOfInvDCAmps, Format(Min(INV_Hz),'###0') AS MinOfACFreq " _
& "FROM magnum2 WHERE (((tbl2.Date_Time)<Now() And (tbl2.Date_Time)>Now()-1))"
set WeekRecMin = MyDatabase.Execute(strSQLMin)
, чтобы проверить и посмотреть, были ли возвращены какие-либо записи, прежде чем я создаю и заполняю таблицу веб-страниц. Я добавил этот код в таблицу
<% response.write("<h2>EOF and BOF are : " & weekRecMin.eof & " - " & weekRecMin.bof & "</h2>") %>
<% if WeekRecMin.EOF=true then %>
...HTML code ...
<% else %>
<% response.write("<tr><td class='auto-style6'><h4>no data found for the past 24 hours. <br/> Database may be out-of-date</h4></td></tr>") %>
<% end if %>
Я наблюдаю, что EOF и BOF являются ложными независимо от того, были ли возвращены данные из запроса, в противном случае страница и код работают нормально.Что я делаю не так?