RE: Case Sensitive

From: Juan Martínez <jeugenio(at)umcervantes(dot)cl>
To: Ana Smail <anasmail(at)unnoba(dot)edu(dot)ar>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: RE: Case Sensitive
Date: 2006-04-06 17:03:13
Message-ID: 1144342994.31286.9.camel@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El jue, 06-04-2006 a las 08:07 -0300, Ana Smail escribió:
> En MYSQL, hay :
> latin1_general_ci Europea occidental (multilingüe), independiente de
> mayúsculas y minúsculas
> latin1_general_cs Europea occidental (multilingüe), dependiente de
> mayúsculas y minúsculas
> y como recién estoy empezando con PostgreSQL, por eso mi pregunta.

y?

> Les mando el script de creación de la tabla:
> CREATE DATABASE UNNOBA
> WITH OWNER = dba
> ENCODING = 'LATIN1'

Es recomendable UTF8

> TABLESPACE = pg_default;
>
> - Schema: "inventario"
>
> -- DROP SCHEMA inventario;
>
> CREATE SCHEMA inventario
> AUTHORIZATION dba;
> GRANT ALL ON SCHEMA inventario TO dba;
> GRANT USAGE ON SCHEMA inventario TO "G_Desarrollo";
> GRANT USAGE ON SCHEMA inventario TO public;
>
> -- Table: "Clasificador1"
>
> -- DROP TABLE inventario.Clasificador1;
>
> CREATE TABLE inventario.Clasificador1
> (
> "Clasificador1Key" int2,
> "Codigo" int2,
> "Descripcion" varchar(50)
> )
> WITHOUT OIDS;
> ALTER TABLE inventario.Clasificador1 OWNER TO dba;
>
> Y este es el Query:
>
> SELECT * FROM inventario.clasificador1 where Clasificador1Key = 1

Clasificador1Key <> "Clasificador1Key"

Esto es el case folding en el identificador.

Cuando no incluyes comillas dobles, todo se llevará a minusculas. Haz la
siguiente prueba

SELECT now() as FECHA;
SELECT now() as "FECHA";

Notaras que en el primer caso, el identificador de columna aparecera en
minusculas, no asi en el segundo caso.

Como consejo, si defines con comillas dobles en el DDL, ocupalas tambien
en las consultas.
>
> Que ejecuto en el PGADMIN III y dá el error que no existe el campo
> clasificador1key.
> Cómo veía que el mensaje de error me mostraba el campo todo en minúsculas,
> lo que hice fue cambiar todos los nombres de campos y tablas a minúsculas y
> anduvo.

De hecho. Digamos que las minusculas el "modo nativo" de escritura.

> Por eso pregunto lo de CASE SENSITIVE.

Postgres fue concebido bajo un sistema derivado de Unix, y este es
completamente sencible, por ende, postgres tambien lo es.

Atte.
Juan Martinez
Depto. Inf.
UMC

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Juan Martínez 2006-04-06 17:04:11 Re: Case Sensitive
Previous Message Alvaro Herrera 2006-04-06 16:57:48 Re: Lentitud update