Re: Problema con update

From: Juan Martínez <jeugenio(at)umcervantes(dot)cl>
To: corlattic <corlattic(at)ospsip(dot)org(dot)ar>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Problema con update
Date: 2006-02-01 20:58:33
Message-ID: 1138827513.9885.9.camel@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El mié, 01-02-2006 a las 15:34 -0500, corlattic escribió:

> tengo una tabla como la siguiente
>
> CREATE TABLE "public"."turnos_1" (
> "tur_fecha" TIMESTAMP WITHOUT TIME ZONE NOT NULL,
> "cod_profe" NUMERIC(18,0) NOT NULL,
> "ficha" VARCHAR(6),
> "tur_asist" VARCHAR(1),
> "tur_bono" NUMERIC(18,0),
> "subnro" NUMERIC(18,0),
> "apellido" VARCHAR(50),
> "nombre" VARCHAR(50),
> "telefono" VARCHAR(20),
> "tur_asigno" TIMESTAMP WITHOUT TIME ZONE,
> "uso" SMALLINT,
> "us_codigo" NUMERIC(18,0),
> "tur_hora" NUMERIC(18,2),
> "sobre" VARCHAR(1),
> "de_codigo" NUMERIC(18,0),
> "especial" VARCHAR(255),
> CONSTRAINT "fecha_profe" PRIMARY KEY("cod_profe", "tur_fecha")
> ) WITHOUT OIDS;

Son necesarias las comillas en los nombres de los atributos de la tabla?
Generalmente se utilizan para usar nombres de atributos con espacios
(mala cosa, pero bueno).

> cuando hago un update en esta tabla lo hago de esta manera
> update turnos_1 set
> apellido='DOMINGUEZ',
> nombre='ROSA LIDIA',
> telefono='no tiene',
> tur_asigno=now(),
> ficha='99050',
> subnro='01',
> uso=5,
> us_codigo=1026,
> especial=''
> where tur_fecha='2006-02-09 15:45:00'
> and cod_profe=6
> el problema es el siguiente
> todos los campos que son de tipo char o varchar me los guarda en NULL ! los
> campos numericos los graba bien
> me fijo en el log de consultas del mismo postgres y la consulta parece haber
> sido ejecutada con exito

Caso raro.
Yo probaría agregando NOT NULL en los atributos character.

Otra cosa que usaría, dado que la tabla esta definida con comillas en
sus atributos, tambien usarlos al momento de referirnos a ellos en
consultas.

> Es mas luego la ejecuto yo y funciona bien, pero en ese momento falla.
> La aplicacion que hace la ejecucion es un php por si esto tuviera algo q ver.

No tendrá que ver algo con el script?

> Esta es la informacion del postgresql
> Version Cluster Port Status Owner Data directory Log file
> 8.1 main 5432 online postgres /var/lib/postgresql/8.1/main
> /var/log/postgresql/postgresql-8.1-main.log
>
> esta corriendo sobre un Debian etch
>
> Este problema no ocurre siempre solamente lo hace cada tanto, en 1000
> registros lo hara alrededor de 300 veces

30% encuentras poco?

Atte.
Juan Martínez

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Juan Martínez 2006-02-01 21:11:21 Re: Copia de seguridad
Previous Message hernando bocanegra grajales 2006-02-01 20:38:10 Ingreso a terminal interactiva de comandos psql