Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Alguien sabe a que se debe el error ORA-01036: illegal variable name/number?

Estas en el tema de Alguien sabe a que se debe el error ORA-01036: illegal variable name/number? en el foro de Bases de Datos General en Foros del Web. Hola, alguien tendrá un ejemplo de como debo llamar un Stored Procedure de Oracle desde VB6? estoy usando ADO 2.5. el procedimiento ya esta creado ...
  #1 (permalink)  
Antiguo 04/02/2004, 18:58
 
Fecha de Ingreso: febrero-2004
Mensajes: 1
Antigüedad: 20 años, 2 meses
Puntos: 0
Pregunta Alguien sabe a que se debe el error ORA-01036: illegal variable name/number?

Hola, alguien tendrá un ejemplo de como debo llamar un Stored Procedure de Oracle desde VB6? estoy usando ADO 2.5. el procedimiento ya esta creado dentro de un package en oracle pero no se que estoy haciendo mal.

la descripcion de la tabla en oracle es:

CREATE TABLE C_DOCUMENTO
(
CVE_DOCUMENTO INTEGER NOT NULL,
DSC_DOCUMENTO VARCHAR2(50 BYTE) NOT NULL
)


el codigo del sp en oracle es :

CREATE OR REPLACE package CONTROLPRES as
cursor c1 is select DSC_documento FROM C_DOCUMENTO;
type cur_doc is ref cursor return c1%ROWTYPE;
Procedure Get_Doc_Dsc (cve_doc in integer,dsc_doc out cur_doc);
END;


CREATE OR REPLACE package body CONTROLPRES as
Procedure Get_Doc_Dsc (cve_doc in integer,dsc_doc out cur_doc) IS
begin
open dsc_doc for select dsc_documento from c_documento;
end;
end;

y el codigo en VB6:

Option Explicit
Private mCnn As ADODB.Connection
Private mrsSelect As ADODB.Recordset
Private mCmd As ADODB.Command
Private msSelect As String
Private mCmdPrmCveDoc As New ADODB.Parameter
Private cve_doc As Integer


Private Sub Form_Load()

Dim sConnect As String 'Declare our connection string
sConnect = "Data Source=CTL_PRES" & ";" & _
"User ID=CTL_PRES" & ";" & _
"Password=CTL_PRES" & ";"
cve_doc = 1
Set mCnn = New ADODB.Connection
With mCnn
.CommandTimeout = 10
.CursorLocation = adUseClient
.Provider = "MSDAORA"
.Open sConnect
End With

'resultset is a keyword, fname the name of the table in the proc.

msSelect = "{call CONTROLPRES.GET_DOC_DSC(?, {resultset 1000, cve_doc})}"

Set mCmd = New ADODB.Command

With mCmd

.CommandText = msSelect
.CommandType = adCmdText
.ActiveConnection = mCnn
Set mCmdPrmCveDoc = .CreateParameter("Cve_Doc", adInteger, adParamInput, 1, 1)
.Parameters.Append mCmdPrmCveDoc

End With

Set mrsSelect = New ADODB.Recordset

mCmdPrmCveDoc = 1
Set mrsSelect = mCmd.Execute
MsgBox mrsSelect.Fields(0)

End Sub


y al llegar al Set mrsSelect = mCmd.Execute
envia el error:

ORA-01036: illegal variable name/number



Gracias
  #2 (permalink)  
Antiguo 05/02/2004, 16:02
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Hola... date una vuelta por:

http://lists.suse.com/archive/suse-o...-Aug/0050.html

Saludos
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:08.