[Date Prev][Date Next][Thread Prev][Thread Next]
[Author Index]
[Date Index]
[Thread Index]
[SQR-USERS Info]
[SQRUG Home Page]
Re: Problem with execute in ODBC/MS SQLSERVER 6.5
- Subject: Re: Problem with execute in ODBC/MS SQLSERVER 6.5
- From: Parijat Sahai <parijatsahai@HOTMAIL.COM>
- Date: Mon, 27 Jul 1998 09:28:40 PDT
Hi,
I guess a lot has been discussed about this infamous error. Yoiu could
look at the archives for the details (might be painful, I understand).
This error occurs when ODBC tries to reuse a handle which it had used
few statements back and has actually lost it in between (you can look at
ODBC API documentation for details). One of the examples is that you
have opened a cursor, at some point of time, Commit the transaction thus
losing the handle to the cursor, and later try to fetch data using the
same cursor. See if you did a Commit between two fetches of a cursor.
Try committing after the cursor is closed. That should solve your
problem.
Parijat
>Date: Mon, 27 Jul 1998 08:09:24 -0600
>Reply-To: SQR-USERS@USA.NET
>From: Juan Alvarado <juan@GYSSA.COM.GT>
>Subject: Re: Problem with execute in ODBC/MS SQLSERVER 6.5
>To: Multiple recipients of list SQR-USERS <SQR-USERS@list.iex.net>
>
>This error:
>Enter this run's parameters:
>
>Lineas por pagina: : 66
>Codigo Tipo : VIC
>Ano Reporte : 1999
>Codigo Empleado : 1
>(SQR 5528) ODBC SQL dbftch error 0 in cursor 4:
> [Microsoft][ODBC SQL Server Driver]Function sequence error
>
>Error on line 113:
> (SQR 3725) Bad return fetching row from database.
>
>SQR: Program Aborting.
>
>Cursor Status:
>
> Cursor #1:
> SQL = {?=call Devuelve_Nombre_Empresa(?)}
> Compiles = 0
> Executes = 1
> Rows = 0
>
> Cursor #2:
> SQL = select CODIGO_TOTAL_ORD, CODIGO_TOTAL_ANT, CODIGO_TOTAL_EXT,
> CODIGO_TOTAL_CSV, CODIGO_TOTAL_VEH, CODIGO_TOTAL_BOI,
> CODIGO_TOTAL_PRO, CODIGO_TOTAL_VAC, CODIGO_TOTAL_VAP,
> CODIGO_TOTAL_B14, CODIGO_TOTAL_AGU, CODIGO_TOTAL_IND,
> CODIGO_TOTAL_SS, CODIGO_TOTAL_ISR, CODIGO_TOTAL_ISE,
> CODIGO_TOTAL_BAN, CODIGO_TOTAL_MER, CODIGO_TOTAL_PRE,
> CODIGO_TOTAL_JUD, CODIGO_TOTAL_CHE, CODIGO_TOTAL_MOT,
> CODIGO_TOTAL_BOL From NOMINA_TIPO Where CODIGO_TIPO = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #3:
> SQL = select Min(EMPLEADO_ID), Max(EMPLEADO_ID) From EMPLEADO Where
> CODIGO_TIPO = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #4:
> SQL = select distinct L.PERIODO_AAMMNO, E.NOMBRE_USUAL,
>SubString('Alta
> InactivoBaja ',Charindex(E.ESTADO_EMPLEADO,'Alta
>InactivoBaja
> '),8), E.INDICA_SEXO, E.DIRECCION_DOMICILIO, E.CEDULA,
> D.DESCRIPCION_DIVISION, U.DESCRIPCION_PUESTO,
> E.NUMERO_SEGURO_SOCIAL, E.NACIONALIDAD, E.NIT, P.FECHA_FINAL,
> E.FECHA_CONTRATACION, E.FECHA_RETIRO, E.FECHA_NACIMIENTO,
> Convert(varchar(4),Datepart(yy, L.PERIODO_AAMMNO)),
> Substring('0',1,2-Datalength(Convert(varchar(2),Datepart(mm,
> L.PERIODO_AAMMNO)))) + Convert(varchar(2),Datepart(mm,
> L.PERIODO_AAMMNO)), Convert(varchar(1),Datepart(dd,
> L.PERIODO_AAMMNO)), L.EMPLEADO_ID From LIBRO_SALARIOS L
> ,PERIODOS_PAGO P ,EMPLEADO E ,DIVISIONES D ,PUESTOS
>
> U Where L.EMPLEADO_ID
>Between
> ? And ? And L.CODIGO_TIPO
=
>?
> And Datepart(yy,PERIODO_AAMMNO) = ? And
> L.CODIGO_TIPO =
>P.CODIGO_TIPO
> And Convert(varchar(4),Datepart(yy,L.PERIODO_AAMMNO)) =
> P.PERIODO_AA And
>
>Substring('0',1,2-Datalength(Convert(varchar(2),Datepart(mm,L.PERIOD
> O_AAMMNO)))) +
>Convert(varchar(2),Datepart(mm,L.PERIODO_AAMMNO)) =
> P.PERIODO_MM And
>Convert(varchar(1),Datepart(dd,L.PERIODO_AAMMNO))
> = P.PERIODO_NO And E.EMPLEADO_ID
>
> = L.EMPLEADO_ID And D.CODIGO_DIVISION
>
> = E.CODIGO_DIVISION And U.CODIGO_PUESTO
>
> = E.CODIGO_PUESTO order by
L.EMPLEADO_ID,P.FECHA_FINAL
>
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #5:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #6:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #7:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #8:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #9:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #10:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #11:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #12:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #13:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #14:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And (L.CODIGO_TOT = ? Or L.CODIGO_TOT
>=
> ? )
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #15:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #16:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #17:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #18:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #19:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #20:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #21:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #22:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #23:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And L.CODIGO_TOT = ?
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #24:
> SQL = select sum(Isnull(MONTO,0)) From LIBRO_SALARIOS L Where
> L.EMPLEADO_ID = ? And L.CODIGO_TIPO = ? And
> L.PERIODO_AAMMNO = ? And (L.CODIGO_TOT = ? Or L.CODIGO_TOT
>
> = ? Or L.CODIGO_TOT = ? )
> Compiles = 1
> Executes = 1
> Rows = 1
>
> Cursor #25:
> SQL = {call OBTENER_EMPLEADO_SUELDO_2(?,?,?,?,?,?,?,?,?,?,?,?,?)}
> Compiles = 0
> Executes = 1
> Rows = 0
>
>
>Juan Manuel Alvarado
>CPS-DBA Sybase XI
>Gerencia & Sistemas Guatemala
>www.gyssa.com.gt
>
>> -----Original Message-----
>> From: Walcker, Paul [SMTP:pwalcker@ISD.CO.SAN-BERNARDINO.CA.US]
>> Sent: Sunday, July 26, 1998 5:29 PM
>> To: Multiple recipients of list SQR-USERS
>> Subject: Re: Problem with execute in ODBC/MS SQLSERVER 6.5
>>
>> What is the specific that ODBC is returning?
>>
>> >-----Original Message-----
>> >From: Juan Alvarado [SMTP:juan@GYSSA.COM.GT]
>> >Sent: Friday, July 24, 1998 3:25 PM
>> >To: Multiple recipients of list SQR-USERS
>> >Subject: Problem with execute in ODBC/MS SQLSERVER 6.5
>> >
>> >When we execute a program that have a begin-select and for each row
>> >execute the instruction "EXECUTE" then the odbc return a error,
>> >
>> >For example:
>> >
>> >begin-select
>> >name
>> > do ve_name
>> >from sysobjects
>> >end-select
>> >
>> >begin-procedure ve_name
>> >execute sp_ve_dato
>> >end-procedure
>> >
>> >The error shows whenever do a begin-select and execute a S.P.
>> >
>> >
>> >does anyone know this error???
>> >
>> >SQR ODBC/MS SQLSERVER 6.5 4.0.3
>> >
>> >
>> >TIA
>> >
>> >Juan Manuel Alvarado
>> >CPS-DBA Sybase XI
>> >Gerencia & Sistemas Guatemala
>> >www.gyssa.com.gt
>
______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com