FIREBIRD - EXECUTAR PROCEDIMENTOS, EXCEPCOES

TRTNCG 14/01/2011 00:27:09
#362240
Bom pessoal uso Firebird e gostaria de saber como faço pelo VB6 para executar ou chamar, Procedimentos, Automatismos, Excepções...
CAPITAO.GARCIA 14/01/2011 08:12:44
#362247
Resposta escolhida
Eu uso esse código aqui

  Function PegaCodigo(tabela As String) As Integer
Dim objCmd As New ADODB.Command
Dim objRS As New ADODB.Recordset
Set Banco = New cBanco
Banco.AbrirBanco

With objCmd
.ActiveConnection = Banco.Conexao
.CommandType = adCmdStoredProc
.CommandText = [Ô]PICOD[Ô]
.Parameters.Refresh
.Parameters(0) = UCase$(Left$(tabela, 3))
End With

Set objRS = objCmd.Execute
PegaCodigo = objRS(0).Value

Set objRS = Nothing
Set objCmd = Nothing

Banco.FecharBanco
Set Banco = Nothing
End Function


Banco é uma classe que tenho de acsso a banco de dados
O problema de chamar procedures do firebird é que se vc chamar a primeira, depois chamar outra e depois voltar a chamar a primeira dá erro 3021, e eu criei um tópico pra saber o porquê.
Tem como chamar por select tambem, assim:

rs.open ([Ô]Select * from MinhaSP([ô][Ô] & parametro1 & [Ô][ô],[ô][Ô] & parametro2 & [Ô][ô])[Ô], minhaConexao)
LLAIA 15/01/2011 01:46:19
#362347
Citação:

:
Bom pessoal uso Firebird e gostaria de saber como faço pelo VB6 para executar ou chamar, Procedimentos, Automatismos, Excepções...



Automatismos seriam Triggers?

Bom, acho Exceptions são ativadas pela SP mesmo. Vc pode ver exemplos de uso de Exception no banco Employee.fdb que acompanha a instalção do FB. Ao executar uma exception, a transação sofre Rollback e um erro é retornado pela ADO. Os triggers podem ser disparados tanto por consequência sw SPs e instruções DML.

A PSQL do Firebird é boa. Basta saber usar o banco.
Tópico encerrado , respostas não são mais permitidas