-----Mensagem original-----
De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] nome de José Antônio
Marcondes de Salles
Enviada em: segunda-feira, 10 de abril de 2006 16:35
Para: Brasil-Usuarios
Assunto: [PostgreSQL-Brasil] Problemas com o INSERT
Prioridade: Alta


Pessoal,

agradeço se alguem puder me dar uma ideia da solução para o problema abaixo
:

Programa simples que recebe uma tela form do ncurses e grava os dados em uma
tabela no PostgreSql. Conexão com o banco ok, SELECT ok, GRANT ok, e no
memento do INSERT recebo o seguinte return code : Attribute "nregra" not
found.

segue a linha do comando :

    /* ---------------------------------------------------------------------
- */
    /* Definicoes de variaveis diversas
*/
    /* ---------------------------------------------------------------------
- */

    int carac;
    int conta;
    char nregra[4];


    strcpy(nregra, field_buffer(field[0], 0));  // nregra recebe de field[0]
>> field e ligado a ncurses

    res = PQexec(conn, "BEGIN");

        if (PQresultStatus(res) != PGRES_COMMAND_OK)
         {
           mvprintw(LINES - 3, 8, "O comando BEGIN falhou !!!!          %s",
PQerrorMessage(conn));
           refresh();
           carac = getch();
           PQclear(res);
           PQfinish(conn);
           return(0);
         }

        res = PQexec(conn, "GRANT SELECT, INSERT, UPDATE ON regras TO
jantonio");

        if (PQresultStatus(res) != PGRES_COMMAND_OK)
         {
           mvprintw(LINES - 3, 8, "O comando GRANT falhou !!!!          %s",
PQerrorMessage(conn));
           refresh();
           carac = getch();
           PQclear(res);
           PQfinish(conn);
           return(0);
         }

        res = PQexec(conn, "SELECT * FROM regras;");

        if (PQresultStatus(res) != PGRES_TUPLES_OK)
         {
           mvprintw(LINES - 3, 8, "O comando SELECT falhou !!!!
%s", PQerrorMessage(conn));
           refresh();
           carac = getch();
           PQclear(res);
           PQfinish(conn);
           return(0);
         }

        res = PQexec(conn, "INSERT INTO regras (numeroregra) VALUES
(nregra)");

        if (PQresultStatus(res) != PGRES_COMMAND_OK)
         {
           mvprintw(LINES - 3, 8, "O comando INSERT falhou !!!!
%s", PQerrorMessage(conn));
           refresh();
           carac = getch();
           PQclear(res);
           PQfinish(conn);
           return(0);
         }

        res = PQexec(conn, "COMMIT");

        if (PQresultStatus(res) != PGRES_COMMAND_OK)
         {
           mvprintw(LINES - 3, 8, "O comando COMMIT falhou !!!!
%s", PQerrorMessage(conn));
           refresh();
           carac = getch();
           PQclear(res);
           PQfinish(conn);
           return(0);


Segue aabaixo o SQL :

-- Table: regras

-- DROP TABLE regras;

CREATE TABLE regras
(
  numeroregra int4,
  colunas int4,
  linhas int4,
  razao int4,
  cores int4,
  "exclusao[95]" int4
  )
WITHOUT OIDS;
ALTER TABLE regras OWNER TO jantonio;
COMMENT ON TABLE regras IS 'Tabela de regras';


Grato,

José Antônio


_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
http://www.postgresql.org.br



--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.385 / Virus Database: 268.4.0/306 - Release Date: 9/4/2006


_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
http://www.postgresql.org.br

Responder a