Ir para conteúdo

POWERED BY:

Arquivado

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

MarKteus

Erro estrano no Eof

Recommended Posts

Seguinte galera, fiz uma sitring de conexão assim:

 

set dbConexao = Server.CreateObject("ADODB.Connection")

set rsTabelas = Server.CreateObject("ADODB.Recordset")

dbConexao.Open = "Provider="& nomeProvider & ";Data Source=" & nomeServidor & _ ";Initial Catalog=" & nomeBanco & ";Integrated Security=SSPI"

rsTabelas = dbConexao.Execute(stringSql)

 

 

qdo eu exeuto response.write rsTabelas("nome") funciona perfeitamente

porém qdo eu uso por exemplo um while not rsTabelas.Eof

 

o seguinte erro é gerado:

Tipo de erro:

Microsoft VBScript runtime (0x800A01B6)

Object doesn't support this property or method: 'eof'

/contferias/cadFuncionario.asp, line 45

 

Alguém sabe como posso resolver esse pequeno impasse

Compartilhar este post


Link para o post
Compartilhar em outros sites

Normalmente, isso ocorre porque você usou um método ou propriedade que não existe, ou não existe na versão do objeto que você está usando.

qual seu banco de dados ???

 

tenta assim, olha este exemplo

 

constring="Provider=sqloledb;Data Source=xanburzum;Initial Catalog=siscom;User Id=sa;Password=;"
' "Provider=SQLOLEDB;Data Source=MAC;Initial Catalog=TesteWind;Integrated Security=SSPI"


Set conexao = Server.CreateObject("ADODB.Connection")
' Abro a conexao
	conexao.open constring
' crio o rs

'  set rs=Server.CreateObject("ADODB.Recordset")
  'crio o SQL
 SQL="SELECT * FROM login ORDER BY login"
  rs.open SQL,conexao,1,3
   %>

e execute ele usando o método OPEN do obj recordset

Compartilhar este post


Link para o post
Compartilhar em outros sites

Normalmente, isso ocorre porque você usou um método ou propriedade que não existe, ou não existe na versão do objeto que você está usando.

qual seu banco de dados ???

 

tenta assim, olha este exemplo

 

constring="Provider=sqloledb;Data Source=xanburzum;Initial Catalog=siscom;User Id=sa;Password=;"
' "Provider=SQLOLEDB;Data Source=MAC;Initial Catalog=TesteWind;Integrated Security=SSPI"


Set conexao = Server.CreateObject("ADODB.Connection")
' Abro a conexao
	conexao.open constring
' crio o rs

'  set rs=Server.CreateObject("ADODB.Recordset")
  'crio o SQL
 SQL="SELECT * FROM login ORDER BY login"
  rs.open SQL,conexao,1,3
   %>

e execute ele usando o método OPEN do obj recordset

 

 

Notei que você não usou o objeto ADODB.Command e nem executou a query usando conexao.Execute(SQL). Por que ? Isso é possivel ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Perfeitamente, na verdade é melhor executar , utilizando o método open do objeto recordset, você tem mais opções, maior gerenciamente, controle etc, seria como te passei acima

 


' aqui você cria sua string de conexão
 constring="Provider=sqloledb;Data Source=xanburzum;Initial Catalog=siscom;User Id=sa;Password=;"
' "Provider=SQLOLEDB;Data Source=MAC;Initial Catalog=TesteWind;Integrated Security=SSPI"

'cria seu obj connection
Set conexao = Server.CreateObject("ADODB.Connection")
' Abro a conexao
        conexao.open constring
' crio o rs

'  set rs=Server.CreateObject("ADODB.Recordset")
  'crio o SQL
 SQL="SELECT * FROM login ORDER BY login"
' aqui você executa seu a SQL atraves do metodo open do recordset
  rs.open SQL,conexao,1,3
   %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Perfeitamente, na verdade é melhor executar , utilizando o método open do objeto recordset, você tem mais opções, maior gerenciamente, controle etc, seria como te passei acima

 


' aqui você cria sua string de conexão
 constring="Provider=sqloledb;Data Source=xanburzum;Initial Catalog=siscom;User Id=sa;Password=;"
' "Provider=SQLOLEDB;Data Source=MAC;Initial Catalog=TesteWind;Integrated Security=SSPI"

'cria seu obj connection
Set conexao = Server.CreateObject("ADODB.Connection")
' Abro a conexao
        conexao.open constring
' crio o rs

'  set rs=Server.CreateObject("ADODB.Recordset")
  'crio o SQL
 SQL="SELECT * FROM login ORDER BY login"
' aqui você executa seu a SQL atraves do metodo open do recordset
  rs.open SQL,conexao,1,3
   %>

O detalhe Xam é que, aquele erro que comentei quando abri o tópico só parou de acontecer qdo passei, na criação do código de acesso a banco, a utilizar o ADODB.Command juntamento com os outros comandos que já haviam.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você fez com o obj recordset, para ver...

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.