Я программирую на Classic ASP. Я пытаюсь сделать пейджинг. Мой бэкэнд - SQL CE 3.5. К сожалению, он не поддерживает подкачку в запросе SQL (как row_number () на сервере sql).
Итак, я использую ASP Paging. Но когда я прошу набор записей, дайте мне первые 10 записей, установив rs.PageSize и rs.AbsolutePage и все, это даст мне все записи. Поэтому я планировал скопировать только первые 10 строк из результирующего набора записей в другой новый набор записей. Поэтому я закодировал, как показано ниже:
<code>
Set rsTemp = CopyRecordsetStructure(objRs)
rsTemp.Open
iRecordsShown = 0
Set objFields = objRs.Fields
intFieldsCount = objFields.Count-1
Do While iRecordsShown < intPageSize And Not objRs.EOF
rsTemp.AddNew
For Idx = 0 To intFieldsCount
rsTemp.Fields(Idx).Value = objRs.Fields(Idx).Value
Next
rsTemp.Update
iRecordsShown = iRecordsShown + 1
objRs.MoveNext
Loop</p>
<p>Public Function CopyRecordsetStructure(ByVal rs)
Dim rsTemp
Set rsTemp = CreateObject("ADODB.Recordset")
Set objFields = rsTemp.Fields
intFieldCount = objFields.Count - 1
For Idx = 0 To intFieldCount
rsTemp.Fields.Append objFields(Idx).Name, _
objFields(Idx).Type, _
objFields(Idx).DefinedSize
Next
Set CopyRecordsetStructure = rsTemp
End Function
Проблема в том, что я не могу открыть "rsTemp". Выдает ошибку
<code>
The connection cannot be used to perform this operation. It is either closed or invalid in this context.
Если я использую какой-то фиктивный запрос и соединение, это не сработает.
Помогите, пожалуйста, скопировать записи из одного набора записей в другой новый набор записей.
Заранее спасибо
Ганеш.