From: | Fabiola Fernández <fabiola(dot)fg(at)gmail(dot)com> |
---|---|
To: | Miguel Rodríguez Penabad <penabad(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Problemas para conectar a la base de datos con ESQL |
Date: | 2007-12-07 10:11:30 |
Message-ID: | 66f6273e0712070211r64adf04ar5ddd9f2368368e60@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Muchas gracias Miguel,
tu ejemplo creo que resuelve mi problema de la conexión, pero me sale un
error: "no existe la relación <<groupdef>>". El caso es que yo tengo una
tabla en la base de datos que se llama GroupDef, ¿puede ser que tenga que
poner el nombre de las tablas en minúscula para que funciones?
Otra vez gracias,
Fabiola Fernández
On 04/12/2007, Miguel Rodríguez Penabad <penabad(at)gmail(dot)com> wrote:
>
> El 4/12/07, Fabiola Fernández <fabiola(dot)fg(at)gmail(dot)com> escribió:
> > Gracias por ayudarme, aquí está el programita que tengo, aviso que es
> muy
> > tonto:
>
> Estos programitas mínimos son fantásticos porque no nos perdemos con
> detalles superfluos y podemos encontrar directamente el error. Aquí te
> lo mando probado
> con una base de datos de nombre "pruebabd" a la que puede acceder un
> usuario que tiene de usuario y clave "prueba".
> El problema era que no incluías el usuario y su clave en el EXEC SQL
> CONNECT...
>
> Ah, y el SQLCA para que lo pille lo pones en minúsculas.
> Y ya de paso te añado una función de gestión de error (el exit(1) me
> da un warning al compilar pero no pasa nada. Supongo que me falta un
> include)
>
>
> #include <stdio.h>
>
> EXEC SQL BEGIN DECLARE SECTION;
> char texto[32];
> const char *usuario = "prueba";
> const char *clave = "prueba";
> const char *bd = "pruebabd";
> EXEC SQL END DECLARE SECTION;
> EXEC SQL INCLUDE sqlca;
>
> void MuestraError(){
> EXEC SQL WHENEVER SQLERROR CONTINUE;
> printf("%d %s", sqlca.sqlcode, sqlca.sqlerrm.sqlerrmc);
> exit(1);
> }
> main()
> {
> EXEC SQL WHENEVER SQLERROR DO MuestraError();
> EXEC SQL CONNECT TO :bd USER :usuario IDENTIFIED BY :clave;
> EXEC SQL DECLARE micursor CURSOR FOR SELECT campo FROM tabla;
> EXEC SQL OPEN micursor;
> EXEC SQL FETCH FROM micursor INTO :texto;
> printf("El campo almacenaba: %s\n", texto);
> EXEC SQL CLOSE micursor;
> EXEC SQL DISCONNECT;
> }
> --
> Miguel Rodríguez Penabad
>
From | Date | Subject | |
---|---|---|---|
Next Message | Fabiola Fernández | 2007-12-07 11:32:40 | Error: ´no existe la relación <<nombretabla>>' |
Previous Message | el-PRiNCiPiTo | 2007-12-07 09:43:26 | Instalar PgSql en windows o linux? |