C/Visual C - Problemas con la biblioteca de SQL Parte 2

 
Vista:

Problemas con la biblioteca de SQL Parte 2

Publicado por César Augusto Navarro Gómez (3 intervenciones) el 17/01/2003 17:55:42
*********************************************************************************

TNS/R Native Mode Risc C - T0252D46 - 01JUN99 (Jul 15 1999 16:12:47)
Copyright Tandem Computers Incorporated 1993-1998

FOR BROWSE ACCESS;
^
"\HGO2.$PRU01.CESAR.TEST", line 24.023: error(252): argument of type "int *"
is incompatible with parameter of type "short *"

int sqlerror;
^
"\HGO2.$PRU01.CESAR.TEST", line 24.004: warning(262): variable "sqlerror" was
declared but never referenced

int errBack; /* Sustituir por el del protocolo */
^
"\HGO2.$PRU01.CESAR.TEST", line 24.006: warning(770): variable "errBack" was
set but never used

0 remarks were issued during compilation.
2 warnings were issued during compilation.
1 error was detected during compilation.
**************************************************************************************

Espero que al enviar el correo no se mueva el formato pero si pasa así el circunflejo que indica el error esta bajo el punto y coma del BROWSE ACCESS;

Espero me puedan ayudar saludos y gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Solución de errores de tipo en biblioteca SQL

Publicado por Alejandro (973 intervenciones) el 28/04/2025 19:41:26
Parece que estás enfrentando un problema de tipo de datos en tu código SQL, específicamente relacionado con la incompatibilidad entre un puntero de tipo `int` y un puntero de tipo `short`. Aquí te dejo algunas sugerencias para solucionar el error y las advertencias que mencionas.

Análisis del error



1. Error de tipo de argumento: El error que mencionas indica que estás intentando pasar un puntero de tipo `int` (`int *`) a una función que espera un puntero de tipo `short`(`short *`). Esto puede suceder si estás utilizando una función de la biblioteca SQL que requiere un tipo específico para sus parámetros.

2. Advertencias: Las advertencias indican que algunas variables han sido declaradas pero no utilizadas. Esto no es un error crítico, pero es una buena práctica limpiar el código eliminando variables innecesarias.

Soluciones propuestas



1. Revisar el tipo de datos: Asegúrate de que las variables que estás pasando a las funciones de la biblioteca SQL sean del tipo correcto. Si la función espera un `short *`, debes declarar tu variable como `short` en lugar de `int`.

Por ejemplo, si tienes algo como esto:
1
int sqlerror;

Cambia a:
1
short sqlerror;

2. Uso de las variables: Si tienes variables que no se utilizan, como `errBack`, considera eliminarlas o asegurarte de que se utilicen en el código. Esto ayudará a mantener tu código limpio y libre de advertencias.

3. Ejemplo de corrección:
Aquí tienes un ejemplo de cómo podrías modificar tu código:

1
2
3
4
5
6
short sqlerror; // Cambiado de int a short
short errBack;  // Cambiado de int a short si es necesario
 
// Asegúrate de que estás utilizando sqlerror en alguna parte del código
// Por ejemplo, al llamar a una función que espera un short *
someFunction(&sqlerror); // Asegúrate de que someFunction espera un short *

Recomendaciones adicionales



- Revisar la documentación: Consulta la documentación de la biblioteca SQL que estás utilizando para asegurarte de que estás pasando los tipos de datos correctos a las funciones.
- Compilación: Después de realizar los cambios, recompila tu código y verifica si el error persiste. Asegúrate de que no haya más incompatibilidades de tipo.

¡Saludos, César!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Solución de errores de tipo en biblioteca SQL

Publicado por César Augusto Navarro Gómez (3 intervenciones) el 29/04/2025 00:13:55
Hola Alejandro.

Antes que nada gracias por tomarte el tiempo de leer mi pregunta.

Lamentablemente el problema en realidad era dentro del metacompilador, al momento de realizar la traducción estaba generando incorrectamente el código intermedio. Ya no tengo el código ni acceso a una Tandem OS, pero recuerdo que el proyecto se pudo terminar, no sin un buen número de piruetas ya que era a lo que nos obligaba el Tandem.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar