En Firebird, al igual que en interbase 6, es posible nombrar los objetos con diferentes combinaciones de mayúsculas y minúsculas.
Por ejemplo, podes tener una tabla llamada "TABLA" y otra llamada "Tabla". Sucede lo mismo con los nombres de los campos. Podes tener un campo CAMPO1 y otro Campo1... en fin. Este comportamiento es gobernado por las comillas dobles en el nobmre de los objetos de la BD.
Si una sentencia SQL no incluye comillas, el comportamiento es el "acostumbrado", convirtiendo primero todos los nombres a MAYUSCULAS.
De esta manera, si creas una tabla de la forma
Código SQL
[-]
create table tabla (
campo1 VarChar(50) Primary key,
campo2 VarChar(50)
);
la tabla se llamará
TABLA, y sus campos
CAMPO1 y CAMPO2
Pero si la creas de la forma:
Código SQL
[-]
create table "tabla" (
"campo1" VarChar(50) Primary key,
"Campo2" VarChar(50)
);
La tabla, en este caso, se llamará
tabla y sus campos
campo1 y Campo2.
En las sentencias SQL que envies al servidor, tenes que seguir esta misma regla para ubicar los objetos creados.
Dada mi ignorancia del estándar SQL92 al respecto, quiero resaltar que no solo interbase/firebird implementa este comportamiento. También oracle, a partir de la versión 8 se comporta de la misma manera en este punto... eso me hace sospechar que es un comportamiento estándar.
Hasta luego.
