Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rafa-martin

recordcount igual a -1

Recommended Posts

como esta seu código, e em que situação ele retorno o -1,

é gerado erro ???

geralmente o Recordcount não é compatível com o padrão cursor forward-only.

 

é muito mais eficiente a utilização GetRows () para o seu recordset (e é facilmente extraída recordcount):

 

<% 
	Dim rsArray 
	Set conn = CreateObject("ADODB.Connection") 
	conn.open "<connection string>" 
	sql = "SELECT columns FROM table WHERE [...]" 
	Set rs = conn.execute(sql) 
	if not rs.eof then 
		rsArray = rs.GetRows() 
		nr = UBound(rsArray, 2) + 1 
		response.write "There were " & nr & " matches." 
		' ... process real results here ... 
	end if 
	rs.close: set rs = nothing 
	conn.close: set conn = nothing 
%>

uma abordagem utilizando o SQL Server, seria

 

CREATE PROCEDURE dbo.getRowsAndCount_v1 
AS 
BEGIN 
	SET NOCOUNT ON 
 
	-- note that the WHERE clause 
	-- should be identical here: 
 
	SELECT COUNT(*) FROM table WHERE [...] 
	SELECT columns FROM table WHERE [...] 
END 
GO

em ASP

 

<% 
	set conn = CreateObject("ADODB.Connection") 
	conn.open "<connection string>" 
	sql = "EXEC dbo.getRowsAndCount_v1" 
	Set rs = conn.execute(sql) 
	response.write "There were " & rs(0) & " matches." 
	Set rs = rs.NextRecordset() 
	rs.close: set rs = nothing 
	conn.close: set conn = nothing 
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Está usando MySQL? Se for altere o conexao.CursorLocation para 3.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.