Hvorfor "låser" RecordCount nogle gange recordset, men ikke altid
Er der nogen der kan fortælle mig hvorfor objRSList.RecordCount nogen gange "låser" recordsettet så man ikke kan tilgå det bagefter?Ved første eksempel her låses recordsettet og jeg kan ikke skrive listen ud medmindre jeg eksekverer sql kommandoen på ny.
Set objRSList = Server.CreateObject("ADODB.RecordSet")
strSQLList = "SELECT articleid, variant1 " &_
"FROM web_col " &_
"WHERE category=1 " &_
"AND deleted=0 " &_
"ORDER BY articleid, variant1"
objRSList.Open strSQLList, strConnectionXAL, 1, 1
...kode udeladt...
intPageCount = objRSList.RecordCount / intPageSize
...kode udeladt...
HEREFTER UDKRIVES LISTEN
Ved andet eksempel her virker låses den ikke og jeg kan skrive listen (eksemplet er lidt langt, men det var lige det jeg havde).
Set objRSList = Server.CreateObject("ADODB.RecordSet")
strSQLList = "SELECT DISTINCT lagerkart.varenummer, lagvariantpost.variant1 " &_
"FROM lagerkart, lagvariantpost " &_
"WHERE lagerkart.dataset='" & Session("dataset") & "' " &_
"AND lagvariantpost.dataset='" & Session("dataset") & "' " &_
"AND lagerkart.varenummer=lagvariantpost.varenummer " &_
"AND ( lagerkart.varenummer IN " &_
"(SELECT DISTINCT varenummer " &_
"FROM ordrepost " &_
"WHERE dataset='" & Session("dataset") & "' " &_
"AND ordrenummer=' 1' " &_
"AND varenummer<>'993' " &_
"AND varenummer<>'98000') " &_
"OR lagerkart.varenummer IN " &_
"(SELECT DISTINCT TO_CHAR( TO_NUMBER( varenummer )+1 ) " &_
"FROM ordrepost " &_
"WHERE dataset='" & Session("dataset") & "' " &_
"AND ordrenummer=' 1' " &_
"AND varenummer<>'993' " &_
"AND varenummer<>'98000') " &_
"OR lagerkart.varenummer IN " &_
"(SELECT DISTINCT TO_CHAR( TO_NUMBER( varenummer )-1 ) " &_
"FROM ordrepost " &_
"WHERE dataset='" & Session("dataset") & "' " &_
"AND ordrenummer=' 1' " &_
"AND varenummer<>'993' " &_
"AND varenummer<>'98000') ) " &_
"AND varenavn IN " &_
"(SELECT varenavn " &_
"FROM lagerkart " &_
"WHERE dataset='" & Session("dataset") & "' " &_
"AND varenummer IN " &_
"(SELECT DISTINCT varenummer " &_
"FROM ordrepost " &_
"WHERE dataset='" & Session("dataset") & "' " &_
"AND ordrenummer=' 1' " &_
"AND varenummer<>'993' " &_
"AND varenummer<>'98000')) " &_
"ORDER BY lagerkart.varenummer, lagvariantpost.variant1"
objRSList.Open strSQLList, strConnectionXAL, 1, 1
...kode udeladt...
intPageCount = objRSList.RecordCount / intPageSize
...kode udeladt...
HEREFTER UDKRIVES LISTEN
Begge er ganske almindelige SELECT sql sætninger, så jeg kan ikke se hvad der gør at den bliver låst ved den første.
