Ir para conteúdo

POWERED BY:

Arquivado

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

cmax

[Resolvido] O que ha de errado no select?

Recommended Posts

Caros amigos devido minha pouca experiencia com asp estou encontrando dificuldade em realizar um simples select, nao sei se pela quantidade de campos.

 

Mas nao estou conseguindo entender.

Alguem poderia me ajudar?

 

segue a descriçao do erro gerado:

# Tipo de erro:

Erro de tempo de execução do Microsoft VBScript (0x800A000D)

Tipos incompatíveis: 'abreBD'

/tzrental/website/detCurriculum.asp, line 10

Abaixo segue a funçao:

<%
dim objConn, objRs

'SUB QUE ABRE CONEXAO COM O BANCO -----------------------------------------------------------------------
sub abreBD()
set objConn = server.createObject("adodb.connection")
objConn.connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("../dados/admin.mdb")& ";Persist Security Info=False"
objConn.open()
end sub
'--------------------------------------------------------------------------------------------------------

'SUB QUE FECHA A CONEXAO COM O BANCO E DESTROI OS OBJETOS DO MESMO --------------------------------------
sub fechaBD()
objConn.close()
set objConn = nothing
end sub
'--------------------------------------------------------------------------------------------------------

'FUNÇÃO Q ABRE O RECORDSET APARTIR DA QUERY PASSADA AO MESMO --------------------------------------------
function abreRS(strSql)
set objRs = server.createObject("adodb.recordSet")
objRs.open strSql, objConn, 3, 3
end function
'---------------------------------------------------------------------------------------------------------

sub fechaRS()
set objRs = nothing
end sub

%>

 

Aqui o codigo resumido onde é realizado o select:

<%
<!-- #include file=includes/banco.asp -->
%>
<%
if(request.queryString("codCurriculum") <> "") then
if(isNumeric(request.queryString("codCurriculum"))) then
intCodCurriculum = request.queryString("codCurriculum")
strSql = "select * from tbl_curriculum where cur_int_codigo = " &intCodCurriculum
call abreBD
call abreRS(strSql)
if(objRs.eof = false) then
strNomeCompleto = objRs("cur_str_NomeCompleto")
strCPF = objRs("cur_str_CPF")
strRG = objRs("cur_str_RG")
strEndereco = obj("cur_str_Endereco")
strBairro = objRs("cur_str_Bairro")
strCEP = objRs("cur_str_CEP")
strCidade = objRs("cur_str_Cidade")
strEstado = objRs("cur_str_Estado")
strDataNasc = objRs("cur_str_DataNasc")
strTelefone = objRs("cur_str_Telefone")
strCel = objRs("cur_str_Cel")
strEmail = objRs("cur_str_Email")
strSexo = objRs("cur_str_Sexo")
strEstCivil = objRs("cur_str_EstCivil")
strFormacao = objRs("cur_str_Formacao")
strEntrada1 = objRs("cur_str_per_Entrada1")
strSaida1 = objRs("cur_str_per_Saida1")
strEmpresa1 = objRs("cur_str_Empresa1")
strFuncao1 = objRs("cur_str_Funcao1")
strDesc1 = objRs("cur_str_Desc1")
strEntrada2 = objRs("cur_str_per_Entrada2")
strSaida2 = objRs("cur_str_per_Saida2")
strEmpresa2 = objRs("cur_str_Empresa2")
strFuncao2 = objRs("cur_str_Funcao2")
strDesc2 = objRs("cur_str_Desc2")
strEntrada3 = objRs("cur_str_per_Entrada3")
strSaida3 = objRs("cur_str_per_Saida3")
strEmpresa3 = objRs("cur_str_Empresa3")
strFuncao3 = objRs("cur_str_Funcao3")
strDesc3 = objRs("cur_str_Desc3")
strQuali = objRs("cur_str_Quali")
strDataCad = objRs("cur_str_DataCad")

end If
call fechaBD()
call fechaRS()
end if
end if
%>

Espero que com isso voces enfim possam me ajudar.

Fico no aguardo e agradeco desde ja.

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual a mensagem de erro que esta sendo exibido?

 

Erro de tempo de execução do Microsoft VBScript (0x800A000D)

Tipos incompatíveis: 'abreBD'

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só para faciltar a ajuda faça o seguinte:

 

<%
'SUB QUE ABRE CONEXAO COM O BANCO -----------------------------------------------------------------------
sub abreBD()
set objConn = server.createObject("adodb.connection")

sString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("../dados/admin.mdb")& ";Persist Security Info=False"

response.write sString 'imprime o contéudo da string de conexão
response.end 'encerra a execução 

objConn.open sString
end sub
%>

 

E veja qual o conteúdo esta sendo montado na string de conexão.

 

Depois retire o response.werite e principalmente o response.end.

 

QQ coisa post o resulta da impressão de sString aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só para faciltar a ajuda faça o seguinte:

 

<%
'SUB QUE ABRE CONEXAO COM O BANCO -----------------------------------------------------------------------
sub abreBD()
set objConn = server.createObject("adodb.connection")

sString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("../dados/admin.mdb")& ";Persist Security Info=False"

response.write sString 'imprime o contéudo da string de conexão
response.end 'encerra a execução 

objConn.open sString
end sub
%>

 

E veja qual o conteúdo esta sendo montado na string de conexão.

 

Depois retire o response.werite e principalmente o response.end.

 

QQ coisa post o resulta da impressão de sString aqui.

 

Conforme voce pediu pra eu fazer essa foi a resposta obtida.

Response.write = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Inetpub\wwwroot\tzrental\dados\admin.mdb;Persist Security Info=False

 

Aguardo instruçoes

E ja agradeço sua disposiçao em me ajudar.

 

ABçs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta assim:

 

sString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("../dados/admin.mdb")

E veja se fuciona.. não esqueça de remover os response.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta assim:

 

sString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("../dados/admin.mdb")
E veja se fuciona.. não esqueça de remover os response.

 

Não entra minha mente o erro persiste cara!!

Exatamente o mesmo erro.

 

Que fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele esta gerando algum numero de erro ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele esta gerando algum numero de erro ?

 

Pior que nao gera um numero ele so retorna a mesma mensagem.

 

Estou desconfiado das variaveis que utilizei vou usar o option explicit com ajuda de voces pode ser?

 

sao varias como faço isso esta dando na quebra linha, como faço pra pular linha na hora de declarar as variaveis?

Compartilhar este post


Link para o post
Compartilhar em outros sites

dá um response.write na string SQL, para ver o k esta sendo passado

response.write(SQL)
response.end()

Compartilhar este post


Link para o post
Compartilhar em outros sites

select * from tbl_curriculum where cur_int_codigo =

 

Nao esta recuperando nada meu velho?

pior que esta tudo correto segundo minha logica!

 

Analise o codigo.

Sinceramente estou perdido.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui o codigo resumido onde é realizado o select:

Post o que está exatamente da linha 10 do arquivo detCurriculum.asp, que é onde está gerando erro.

 

Ao que tudo indica você não está conseguindo a sub abreBD, devido há alguma variável com mesmo nome, ou algo do tipo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz o seguinte teste abaixo que rodou sem problemas.

 

<%
dim objConn, objRs

'SUB QUE ABRE CONEXAO COM O BANCO -----------------------------------------------------------------------
sub abreBD()
	set objConn = server.createObject("adodb.connection")
	objConn.connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("dados/bd1.mdb") 
	objConn.open()
	
	response.write "bd ok"
end sub


call abreBD

%>

Só troquei:

objConn.connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("../dados/admin.mdb")& ";Persist Security Info=False"

Por:

objConn.connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("dados/bd1.mdb")

Compartilhar este post


Link para o post
Compartilhar em outros sites

faz assim:

 

sub abreconexao
constring="provider=microsoft.JET.OLEDB.4.0;Data Source=" & Server.MapPath("db/quaddra.mdb")
Set conexao=Server.CreateObject("ADODB.Connection")
conexao.open constring
end sub

ao inves de usar o objeto com a propriedade objConn.connectionString

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui o codigo resumido onde é realizado o select:

Post o que está exatamente da linha 10 do arquivo detCurriculum.asp, que é onde está gerando erro.

 

Ao que tudo indica você não está conseguindo a sub abreBD, devido há alguma variável com mesmo nome, ou algo do tipo.

 

 

Desculpe a demora, abaixo esta a linha solicitada:

 

strSql = "select * from tbl_curriculum where cur_int_codigo = " &CodCurriculum

 

Fiz o seguinte teste abaixo que rodou sem problemas.

 

<%
dim objConn, objRs

'SUB QUE ABRE CONEXAO COM O BANCO -----------------------------------------------------------------------
sub abreBD()
	set objConn = server.createObject("adodb.connection")
	objConn.connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("dados/bd1.mdb") 
	objConn.open()
	
	response.write "bd ok"
end sub





call abreBD

%>

Só troquei:

objConn.connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("../dados/admin.mdb")& ";Persist Security Info=False"

Por:

objConn.connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.mapPath("dados/bd1.mdb")

 

Parceiro, conforme sua sugestão fiz alteração no código e me retornou o mesmo erro.

 

Tipo de erro:

Erro de tempo de execução do Microsoft VBScript (0x800A000D)

Tipos incompatíveis: 'abreBD'

/tzrental/website/detCurriculum.asp, line 13

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando postar o erro, poste a linha também.

 

Veja que o erro já está na linha 13, nesse caso não adiantou você postar a 10, já que você alterou o código e mudou o erro de lugar. No minimo na linha do erro tem que ter abreBD.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando postar o erro, poste a linha também.

 

Veja que o erro já está na linha 13, nesse caso não adiantou você postar a 10, já que você alterou o código e mudou o erro de lugar. No minimo na linha do erro tem que ter abreBD.

 

Exatamente Hargon, na linha 13 do erro esta esta: Call abreBD

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Quando postar o erro, poste a linha também.

 

Veja que o erro já está na linha 13, nesse caso não adiantou você postar a 10, já que você alterou o código e mudou o erro de lugar. No minimo na linha do erro tem que ter abreBD.

 

Exatamente Hargon, na linha 13 do erro esta esta: Call abreBD

 

Rapaziada primeiramente obrigado pela paciencia de vocês, depois de passar dias atrás do erro descobri o erro uma variável.

Resumindo o erro corrigido, obrigado por tudo!!

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.