Grato ela dica, sei que li em algum lugar da documentação que o Postgresql encarrega-se de cuidar dos aspectos de conversão de tipos de dados, contudo fiz um : int regran; regran = atoi(nregra); e converti o dado para int e o problema continua, ou seja o mesmo return code = Attribute "regran" not found.
José Antônio -----Mensagem original----- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] nome de Joao Enviada em: segunda-feira, 10 de abril de 2006 17:12 Para: [email protected] Assunto: Re: [PostgreSQL-Brasil] Problemas com o INSERT irmao posso ate estar errado pq dei uma olhada rapida na sua tabela nregra é um int4 e no seu codigo é um vetor de caratcteres char[4]... ----- Original Message ----- From: "José Antônio Marcondes de Salles" <[EMAIL PROTECTED]> To: "Brasil-Usuarios" <[email protected]> Sent: Monday, April 10, 2006 4:34 PM Subject: [PostgreSQL-Brasil] Problemas com o INSERT 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 _______________________________________________ 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
