Ir para conteúdo

POWERED BY:

Arquivado

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

ROGERIO VILELA

Mysql - ASP

Recommended Posts

Pessoal, estou iniciando em ASP e utilizando o banco de dados Mysql 5.0 no processo de conexão ADO (Access Data Object), o que tem ocorrido bem até agora, porém, estou com sérias dificuldades quando ocorre um erro na procedure ou no sql... a captura desse erro não tem funcionado muito bem.Então resolvi estudar as funções próprias do Mysql que já tem o recurso de retorno do erro pronta, como por exemplo MYSQL_CONNECT(), MYSQL_QUERY(), entre outras, agora, o que eu preciso fazer para executar essas funções diretamente na página ASP??? Não tenho encontrado muito material de pesquisa, tenho apenas encontrado textos com a linguagem PHP...Me ajudem!!!Rogério.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É que não há estas funções nativamente no ASP (acho).Imagino que a única forma seja com ADO mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo, em ADO eu consigo executar a query, porém, como recupero um erro??? Tipo assim, minha query vai deletar um determinado registro, só que uma constraint no banco não vai deixar... o erro estoura na página... queria tratar melhor esse erro...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai você tem que estudar sobre RESUME ERROR

 

exemplo:

'Executaa inserção no Banco de DadosSet ObjRs = objConn.Execute(strQuery)'Fecha o Objeto de ConexãoobjConn.close'"APAGA" qualquer instancia que possa ter no objeto objRs e objConnSet objRs = NothingSet objConn = Nothingif err = 0 Then'Redireciona o usuário caso não tenha ocorrido erro na transaçãoresponse.redirect "Sucesso_Alteraçãofornecedor.asp"end if

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que ele tá se referindo a erro DENTRO do motor do banco de dados filipecrosk.ROGERIO VILELA, se não me engano, acho que ADO tem uma propriedade que exibe os erros, mesmo internos. Procura na referencia oficial da ADO lá no msdn.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pois é pessoal, seguindo as dicas de vcs e estudando um pouquinho códigos e a página http://msdn.microsoft.com/library/default....sevbscriptx.asp consegui montar o meu código com as validações necessárias, no exemplo abaixo é um caso de exclusão de uma tabela pai que não poderá ser excluido o registro que tenha filhos ( a famosa FK do banco de dados ). É só um código simples, podendo ser melhorado.

Valeu.

 

<% @LANGUAGE=VBScript %>

<!--#include file="ADOVBS.asp"-->

<!--#include file="conexao.asp"-->

 

<%

Dim icodigo

icodigo = request.Form("codigo")

 

Call abre_conexao

 

sql = "SELECT * FROM convenio WHERE codconvenio = 1000" 'nao consigo recuperar o codigo do form anterior

 

Set rsa = server.CreateObject("ADODB.RecordSet")

rsa.open sql, Conexao, adOpenKeyset, adLockOptimistic

 

If Not rsa.EOF or rsa.BOF Then

On Error Resume Next

rsa.Delete 1

If conexao.Errors.Count > 0 Then

' For Each Err In conexao.Errors

' Response.Write ("Error " & Err.SQLState & ": " & Err.Description & " | " & Err.NativeError)

' Next

' conexao.Errors.Clear

Response.Write ("Cannot delete since there are related records in other tables." & err.number)

Response.End

rsa.rollbacktrans

End If

Else

Response.Write "Not a Valid Record Number"

Response.End

End If

set rsa = nothing

 

call fecha_conexao

%>

http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

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.