0% encontró este documento útil (0 votos)
202 vistas27 páginas

Firebird PDF

Cargado por

Galexis
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
202 vistas27 páginas

Firebird PDF

Cargado por

Galexis
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 27

Programa o script de instalacin

Aunque es posible instalar Firebird por algn mtodo del


sistema de archivos tal como desempaquetar (untar) un
archivo de instantnea (snapshot) o descomprimir un archivo
estructurado .Zip de Winzip se recomienda utilizar el paquete de
distribucin la primera vez que instale Firebird. El ejecutable de
instalacin de Windows, el programa rpm (RedHat Package
Manager) de Linux y el archivo .tar.gz oficial para otras
plataformas Posix realizan algunas tareas esenciales de
configuracin. Si se siguen las instrucciones correctamente, no
debera quedar nada por hacer despus de completado el
proceso, slo conectarse y comenzar!

Plataformas Windows

El instalador de Firebird permite escoger entre instalar la


versin Superserver o la versin Classic Server. Lo
trecomendable es elegir Superserver .

El manejador fue instalado bajo la plataforma de servidor


Windows XP, por lo que, al completar la instalacin el servicio
Firebird estar corriendo automticamente, y la prxima vez que
reinicie su servidor, el servicio se iniciar automticamente.

Probar su instalacin

Haciendo Ping al servidor es necesario comprobar que el


servidor Firebird est ejecutndose.

Si todo funciona como fue diseado, el proceso del servidor


Firebird estar corriendo en el servidor despus de completada
la instalacin. Arrancar automticamente cada vez que reinicie
su servidor.
En este punto, se asume que utilizar el protocolo TCP/IP
recomendado para su red cliente/servidor Firebird. Las redes
IPX/SPX no son soportadas por Firebird.

Windows XP

Abra el Panel de Control -> Servicios (NT) o Panel de


Control ->Herramientas Administrativas-> Servicios (2000, XP).
Esta ilustracin muestra el applet de Servicios en Windows 2000.
La apariencia puede cambiar de una edicin de Windows a otra.

Si el guardin est corriendo (como se muestra en la


imagen, arriba) puede tener un nombre de servicio diferente
debido a cambios de versin.

En Windows XP, el Guardian es una conveniencia ms que


una necesidad, dado que estos sistemas operativos cuentan con
la facilidad de monitorear y reiniciar servicios. Se recomienda
que mantenga al Guardian activo en otras plataformas si no
tiene al SYSDBA a mano para reiniciar el servicio manualmente
en caso que se detenga por alguna razn

Applets del panel de control para Windows


Desde la versin 1.03, se incluye un applet para el panel de
control en la distribucin de Firebird. Aunque el applet no es
esencial, provee una forma conveniente para arrancar y detener
el servidor.

Desafortunadamente, el applet incluido en el kit solamente


funciona en Windows NT, 2000 y XP.

ACERCA DE LA INSTALACIN DE FIREBIRD

1) PRECAUCIONES:

Es muy importante tomar en cuenta que la instalacin de G2K


versin DEMO o normal. Implica la instalacin del gestor de base
de datos FireBird. No se esta instalando un programa cualquiera.
G2K utiliza este potente motor de base de datos y esto requiere
unas implicaciones tcnicas y conocimientos medios o
avanzados.

Si no se es el Administrador del Sistemas, es recomendable


buscar ayuda de un especialista en caso de dudas.

Antes de comenzar con la instalacin debe comprobar si


FireBird o InterBase ya estn instalados en su equipo. Para ello,
se va al Panel de Control y pulse en Agregar o quitar
programas.

Si FireBird o InterBase estn instalados en su equipo


aparecern en la lista:

Tambin puede verificar la existencia o no de una carpeta


llamada Interbase o
Borlan\Interbase CORP.

2) INSTALACIN SOBRE WINDOWS XP:

Se encontrara el archivo ejecutable para realizar la


instalacin en:

-. Nuestro CD-ROM DEMO en la carpeta \servidor


-. En Internet: www.tecnimunrue.com/Descargas.

Es recomendable que si se utiliza la instalacin desde


Internet, al momento de descargar, cuando se pregunte por
Abrir o Guardar, elija la opcin ABRIR, si la velocidad de
conexin a Internet no es muy rpida le recomendamos que
guarde este archivo en su disco duro para posteriormente
ejecutar la instalacin.
Entonces deber elegir la opcin guardar...
Al iniciar la instalacin de FireBird, se le preguntar si est
seguro de que desea realizar la instalacin. Pulsando Si
FireBird se instalar en su equipo.

Le aparecer esta ventana que le recomienda que cierre el resto


de aplicaciones que estn ejecutndose en su equipo. Despus
de cerrar el resto de aplicaciones pulse el botn Next.

En la siguiente ventana podr leer los trminos de la licencia.


Pulse en Yes para aceptar los trminos y seguir con la
instalacin.

En el siguiente cuadro de dilogo tambin debe de pulsar Next


para continuar.
La instalacin le permitir especificar la ruta en dnde se
instalar el programa.
Le recomendamos que acepte la ruta propuesta pulsando Next:

FireBird le preguntar qu tipo de instalacin desea realizar.


Escoja la opcin Full installation of server and development
tools y pulse Next.
Se le pregunta en qu carpeta del men INICIO desea colocar los
accesos de FireBird. Acepte la carpeta propuesta pulsando
nuevamente en Next.

En la siguiente ventana se preguntar sobre varias opciones de


la instalacin.
Recomendamos que acepte los valores por defecto y pulse
Next.

En Windows XP/2000 En Windows 98/Me


En la siguiente ventana pulse Install.

Pulse Next en esta ventana.

La instalacin ha finalizado correctamente. Pulse Finish.


NOTA IMPORTANTE: FireBird se iniciar automticamente bajo
Windows 2000/XP. Sin embargo, bajo Windows 98/Me , ser
necesario pulsar sobre el acceso directo FireBird que se
instalar en el ESCRITORIO para que se ejecute. (Esto slo es
necesario en la versin DEMO).

3) DESINSTALACIN DE FIREBIRD:

Para proceder con la desinstalacin debe ir a Panel de


Control y pulsa en Agregar o quitar programas. FireBird
aparecer en la lista. Pulse en Cambiar
o quitar:
Una ventana le preguntar si est seguro de realizar la
desinstalacin. Pulse S.

Comenzar el proceso de desinstalacin. Al finalizar aparecer el


siguiente cuadro de dilogo:

Firebird ha sido removido de su equipo.


CONFIGURACIN

Ubicaciones en disco por defecto

La siguiente tabla describe las ubicaciones en disco por


defecto para los componentes en Windows y Linux.

En la gran revisin del cdigo base comenzada en v.1.5,


fueron removidos los antiguos enlaces a 'artefactos' de
Interbase, y muchos de los principales componentes fueron
renombrados. Como resultado, Firebird 1.5 permite un servidor
InterBase corriendo al mismo tiempo, mientras los dos
servidores no escuchen en el mismo puerto TCP/IP.

Plataforma Componente Nombre de archivo Ubicacin por


defecto
Windows 32- Directorio de C:\Archivos de
bit y 64 bit instalacin
_(window (referido de aqu programa\Firebird\
95,98, ME, NT, en ms
2000, XP) como Firebird_1_5
<InstallDir>)

Servidor Firebird fbserver.exe (SS) o <InstallDir>\bin


fb_inet_server.exe
(CS)

Herramientas de gbak.exe, gfix.exe, <InstallDir>\bin


lnea de
Comandos gstat.exe, etc.

Base de datos de employee.fdb <InstallDir>\


ejemplo
examples

Libreras de ib_udf.dll & <InstallDir>\UDF


funciones
definidas por el fbudf.dll
usuario
(UDF)

Cliente Firebird fbclient.dll <InstallDir>\bin


(con un archivo (con una copia
opcional opcional
gds32.dll, para las en el directorio de
sistema
aplicaciones de Windows - vea
antiguas) la
nota debajo de la
tabla)
Linux y
posiblemente Directorio de /opt/firebird
otras instalacin
distribuciones (referido de aqu
UNIX en ms
como
<InstallDir>)

Servidor Firebird fbserver (SS) o <InstallDir>/bin


fb_inet_server
(CS)

Herramientas de gbak, gfix, gstat, <InstallDir>/bin


lnea de etc.
Comandos

Base de datos de employee.fdb <InstallDir>/


ejemplo
examples

Libreras UDF ib_udf.so, fbudf.so <InstallDir>/UDF

Cliente Firebird libfbclient.so.- /usr/lib


1.5.n (binario); (actualmente, los
binarios
libfbclient.so.1, reales estn en
libfbclient.so <InstallDir>/lib,
(enlace simblico) pero Ud. debera
usarlos
Los antiguos enlaces en
enlaces /usr/lib)
libgds* tambin se
instalan.

Discos de instalacin

El servidor Firebird y cualquier base de datos que cree o a


la que se conecte deben residir en un disco duro fsicamente
conectado a la mquina servidora. No puede ubicar componentes
del servidor o una base de datos en un disco mapeado, un
directorio compartido o un sistema de archivos de red.

Nota
Se montar una base de datos de slo lectura en un disco
CD-ROM pero no puede ejecutar el servidor Firebird desde uno.

Otras cosas necesarias

Una direccin de red para el servidor

Si Ud. est en una red administrada, obtenga la direccin IP


del servidor de su administrador de sistemas.
Si tiene una red simple de dos mquinas enlazadas por un
cable cruzado, puede configurar su servidor con cualquier
direccin IP que desee excepto 127.0.0.1 (que est reservada
para un servidor de realimentacin local) y, por supuesto, la
direccin IP que est usando para su mquina cliente. Si conoce
la direccin IP nativa de sus tarjetas de red, y son diferentes,
puede simplemente usar sas.
Si su intencin es probar una instalacin en una nica mquina
como cliente y servidor, debera usar la direccin de
realimentacin local - localhost, con la direccin IP 127.0.0.1
Nota

En Windows, es posible conectar localmente al servidor, sin


usar la realimentacin local TCP/IP.
No es una conexin TCP/IP y no es una forma segura para
conectar usando hilos (thread-safe). Funciona bien para usar
instancias nicas de las herramientas de lnea de comandos
(gsec, gbak etc.).

Nombre de usuario y clave por defecto

El usuario SYSDBA posee todos los privilegios sobre el


servidor. Dependiendo de la versin, SO, y arquitectura , el
programa de instalacin:
instalar el usuario SYSDBA con la clave masterkey
(actualmente, masterke: se ignoran los caracteres ms all del
octavo), o
le pedir que ingrese una clave durante la instalacin, o
generar una clave aleatoria para el usuario SYSDBA y la
almacenar en el archivo /opt/firebird/ SYSDBA.password
Si su servidor est expuesto aunque sea mnimamente a la
Internet y la clave es masterkey, debera cambiarla
inmediatamente usando la utilidad de lnea de comando gsec.

Como cambiar la clave de SYSDBA

Importante

Note que, con algunas instalaciones de Firebird, Ud. slo


puede ejecutar gsec si est autenticado en el sistema operativo
como Superusuario (root en Linux) o como el usuario bajo el
cual corre el proceso del servidor Firebird.

Supongamos que decide cambiar la clave de SYSDBA a


icuryy4me.
1. Abra una ventana de terminal en su servidor y posicinese
en el directorio donde se localizan las utilidades de lnea de
comandos. Refirase a Tabla de componentes de una
instalacin Firebird para encontrar esta ubicacin.
2. Escriba lo siguiente (sensible a maysculas en todas las
plataformas excepto Windows):
gsec -user sysdba -password masterkey
Debera ver el prompt de la utilidad gsec :
GSEC>
3. Escriba este comando:
modify sysdba -pw icuryy4me

4. Presione Enter. La nueva clave icuryy4me est ahora


encriptada y almacenada y masterkey ya no es vlida.

5. Ahora salga de la terminal de gsec:


Quit

Nota

Debido a que Firebird ignora todos los caracteres de una


clave despus del octavo caracter,
icuryy4m funcionar, tanto como icuryy4monkeys.

Una herramienta de administracin

La distribucin de Firebird no incluye una herramienta de


administracin visual. Contiene un conjunto de herramientas de
lnea de comandos, programas ejecutables que se localizan en el
subdirectorio bin de su instalacin de Firebird.
Las herramientas visuales disponibles para usar en un equipo
cliente con Windows son demasiado numerosas para describirlas
aqu. Existen tambin, en distinto estado de construccin, unas
pocas herramientas escritas en Kylix de Borland para usar en
mquinas clientes Linux.
Inspeccione la pgina Downloads > Contributed > Admin Tools
page (Descargas de contribuidores; pgina de herramientas de
administracin) en http://www.ibphoenix.com para ver todas
las opciones.

Nota
Se puede usar un cliente Windows para acceder a un servidor
Linux y viceversa.

Una herramienta de administracin

La distribucin de Firebird no incluye una herramienta de


administracin visual. Contiene un conjunto de herramientas de
lnea de comandos, programas ejecutables que se localizan en el
subdirectorio bin de su instalacin de Firebird.

Las herramientas visuales disponibles para usar en un


equipo cliente con Windows son demasiado numerosas para
describirlas aqu. Existen tambin, en distinto estado de
construccin, unas pocas herramientas escritas en Kylix de
Borland para usar en mquinas clientes Linux.

Inspeccione la pgina Downloads > Contributed > Admin


Tools page (Descargas de contribuidores; pgina de
herramientas de administracin) en http://www.ibphoenix.com
para ver todas las opciones.

Seguridad

Firebird 1.5 tiene unas cuantas provisiones nuevas en la


parte de seguridad. Explrelas! Muchas de las caractersticas
configurables toman como valor por defecto el antiguo,
comportamiento inseguro para no interferir con las
aplicaciones existentes, pero se puede mejorar
significativamente la seguridad de su sistema si eleva el nivel de
proteccin dondequiera que sea posible.

Entre las nuevas y/o diferentes caractersticas de


seguridad se cuentan:

En los sistemas Posix, Firebird ahora se ejecuta como usuario


firebird por defecto, no como root.

En las plataformas Windows, tambin se puede ejecutar el


servicio de Firebird bajo una cuenta de usuario designada (por
ej. Firebird). La prctica actual ejecutar el servicio como el
usuario LocalSystem implica un riesgo de seguridad si su
sistema est conectado a la Internet. Consulte README.instsvc
en el subdirectorio doc para aprender sobre esta configuracin.

Alias de Bases de Datos esconden al cliente la ubicacin fsica


de las bases de datos. Usando alias, un cliente puede por
ejemplo conectar a frodo:zappa sin necesidad de saber que la
ubicacin real es
frodo:/var/firebird/music/underground/mothers_of_invention.f
db.
Los alias tambin le permiten reubicar bases de datos
manteniendo la misma cadena de conexin en los clientes.

El parmetro DatabaseAccess puede tomar el valor Restrict


para limitar el acceso a directorios explcitos del sistema de
archivos, o incluso None para permitir el acceso a bases de datos
slo a travs de alias. El valor por defecto es All, esto es, sin
restricciones.

El parmetro ExternalFileAccess permite controlar el acceso a


tablas externas.

El parmetro UdfAccess indica las ubicaciones permitidas para


libreras de funciones definidas por el usuario.

Conectar a la base de datos de ejemplo

En el subdirectorio examples de su instalacin de Firebird


hay una base de datos de ejemplo llamada employee.fdb. Puede
usar esta base de datos para probar sus alas.

Nombre del servidor y ruta de acceso

Si Ud. cambia de lugar la base de datos de ejemplo,


asegrese de moverla a un disco duro que est fsicamente unido
a su equipo servidor. Los discos compartidos, mapeados o (en
Unix) sistemas SMB (Samba) no funcionarn. La misma regla se
aplica a cualquier base de datos que Ud. cree.
Hay dos elementos en una cadena de conexin: el nombre del
servidor y la ruta de acceso al archivo.

El formato es como sigue:

Para un servidor Linux:


servidor:/ruta_al_archivo/archivo_de_la_base_de_datos.

Ejemplo en un servidor Linux o algn otro Posix llamado


serverxyz: serverxyz:/opt/interbase/examples/employee.fdb

Para un servidor Windows:


servidor:letra_de_disco:\ruta\archivo_de_base_de_datos.
Ejemplo en Windows:
castillo:D:\Cultura\BasesDeDatos\MsicaNo.fdb

La sentencia CONNECT

Conectar a una base de datos Firebird siempre requiere que


el usuario se identifique usando un nombre de usuario y clave
vlidos -operacin normalmente denominada log-in o login.
Cualquier usuario aparte de SYSDBA, root (en los sistemas
Posix), o Administrador (en los sistemas Windows, si Firebird se
ejecuta con ese usuario) necesita tambin tener permisos a los
objetos dentro de una base de datos. Por simplicidad, veremos
aqu la autenticacin como SYSDBA usando la clave masterkey.

Usando isql

Hay varias formas diferentes para conectar con una base de


datos usando isql. Una forma es ejecutar isql en su terminal
interactiva. Dirjase al subdirectorio bin de su instalacin y en el
prompt tipee el comando isql (nota: # significa presione Enter
):

C:\Archivos de programa\Firebird\Firebird_1_5\bin>isql# Use


CONNECT or CREATE DATABASE to specify a database
SQL>CONNECT "C:\Archivos de
programa\Firebird\Firebird_1_5\examples\ employee.fdb"#
CON>user 'SYSDBA' password 'masterkey';#

Importante

En isql, cada sentencia SQL debe finalizar con un punto y


coma. Si presiona Enter y la lnea no termina con un punto y
coma, isql asume que la sentencia contina en la siguiente lnea
y el prompt cambiar de SQL> a CON>. De esta manera se
pueden distribuir sentencias largas sobre multiples lneas.
Si presiona Enter luego de su sentencia y se olvida del punto y
coma, escrbalo en la lnea en blanco luego del CON> prompt y
presione Enter nuevamente.
Nota

Aunque la norma para delimitar cadenas de caracteres en


Firebird son las comillas simples, se utilizaron comillas dobles
para la ruta de la base de datos en el ejemplo anterior. Esto es
necesario a veces con algunas de las utilidades de lnea de
comandos donde la ruta de la cadena de conexin contenga
espacios. Las comillas simples deberan funcionar para rutas que
no contengan espacios.

En este punto, isql le informar que Ud se ha conectado:

DATABASE "C:\Archivos de
programa\Firebird\Firebird_1_5\examples\ employee.fdb",
User: sysdba SQL>

Ahora puede seguir jugando con la base de datos


employee.fdb. Los caracteres isql significan interactive SQL
[utility]. Puede usarlo para consultar datos, obtener informacin
acerca de los metadatos, crear objetos de base de datos,
ejecutar scripts de definicin de datos y mucho ms.
Para volver a la lnea de comandos escriba
SQL>QUIT;#

Usando un cliente grfico (GUI)

Las herramientas clientes GUI generalmente se hacen


cargo de componer la cadena CONNECT por Ud. usando la
informacin de servidor, ruta, nombre de usuario y clave que Ud.
escribe en campos especficos.
Use los elementos como se describe en el tpico anterior.

Nota

Es muy comn en tales herramientas esperar ambos servidor +


ruta como una sola cadena

Recuerde que los nombres de archivo y comandos en Linux y


otros sistemas Posix distinguen maysculas y minsculas.
Crear una base de datos usando isql

Hay ms de una manera de crear una base de datos usando


isql. Aqu veremos una sola forma simple de crear una base de
datos en forma interactiva -aunque, para el trabajo serio de
definicin de bases de datos, Ud. debera crear y mantener los
metadatos de sus objetos usando scripts de definicin de datos.
Hay un captulo completo en el manual Using Firebird sobre este
tpico.

Arrancar isql

Para crear una base de datos en forma interactiva usando


la interfaz de comandos de isql, se debe trabajar en el servidor.
Posicione una terminal de comandos en el subdirectorio bin y
arranque isql como sigue:
C:\Archivos de programa\Firebird\Firebird_1_5\bin>isql#
Use CONNECT or CREATE DATABASE to specify a database

La sentencia CREATE DATABASE Ahora puede crear su


nueva base de datos interactivamente. Supongamos que desea
crear una base de datos llamada test.fdb y almacenarla en un
directorio llamado data en su disco D:

SQL>CREATE DATABASE 'D:\data\test.fdb' page_size 8192#


CON>user 'SYSDBA' password 'masterkey';#

La base de datos ser creada y, luego de unos breves


instantes, el prompt SQL volver a aparecer. Ahora Ud. est
conectado a la nueva base de datos y puede proceder a crear
algunos objetos de prueba en ella.
Para verificar que realmente hay una base de datos ah, escriba
esta consulta:

SQL>SELECT * FROM RDB$RELATIONS;#

La pantalla se llenar con una gran cantidad de datos! Esta


consulta selecciona todas las filas de la tabla de sistema adonde
Firebird almacena los metadatos para las tablas. Una base de
datos vaca no est vaca -contiene una base de datos que ser
completada con metadatos a medida que Ud. cree objetos en
ella.
Para volver a la lnea de comandos tipee
SQL>QUIT;#
Realizar una instalacin de cliente nicamente

Cada mquina cliente remota debe tener instalada la


librera cliente -libfbclient.so en clientes Posix, fbclient.dll en
clientes Windows que concuerda con la versin del servidor
Firebird.
Las versiones de Firebird a partir de la 1.5 pueden instalar
enlaces simblicos (symlinks) o copias con nombres similares a
los de las libreras de la versin 1.0 (con los nombres viejos de
Interbase), para mantener la compatibilidad con productos de
terceras partes que necesitan estos archivos. Tambin se
necesitan algunas otras piezas para una instalacin de la parte
cliente.

Windows

Actualmente, no hay un programa de instalacin compacto


que lo ayude a instalar las partes clientes en un cliente Windows.
Si Ud. se encuentra en la situacin comn de correr clientes
Windows contra un servidor Firebird en Linux u otros sistemas
Posix (o tambin si el servidor est en otro equipo con
(Windows), necesita descargar el paquete de instalacin
completo que corresponda a la versin del servidor Firebird que
instal en su equipo servidor.
Afortunadamente, una vez que Ud. tiene el kit, la instalacin del
cliente en Windows es muy simple de realizar. Ejecute el
programa de instalacin, de la misma manera que lo hara para
instalar el servidor pero seleccione la opcin SOLO CLIENTE
(client only) del men de instalacin.

El lenguaje SQL de Firebird

Cada sistema gestor de bases de datos tiene sus propias


idiosincrasias en la forma en que implementa SQL. Firebird
adhiere al estndar SQL ms rigurosamente que cualquier otra
RDMS excepto posiblemente por su primo, InterBase. Los
desarrolladores que migren desde productos que cumplen menos
con los estndares frecuentemente suponen errneamente que
Firebird es rebuscado, mientras que muchos de sus aparentes
particularidades no son ms que restricciones del estndar.
El smbolo delimitador de cadenas

Las cadenas de caracteres en Firebird estn delimitadas por


un par de comillas simples -'I am a string' (cdigo ASCII 39, no
96). Si Ud. ha usado versiones previas del pariente de Firebird,
Interbase , recordar que las comillas simples y dobles se
podan intercambiar como delimitadores de cadenas. En Firebird,
las comillas dobles no se pueden usar como delimitadores de
cadenas.

Identificadores con comillas dobles

Antes del estndar SQL-92, no era legal tener nombres de


objetos (identificadores) en una base de datosque fueran iguales
a las palabras claves del lenguaje, distinguieran maysculas de
minsculas, o contuvieran espacios. SQL-92 introdujo un nuevo
estndar para hacer legales todas esas cosas, siempre que los
identificadores fueran rodeados por un par de smbolos de
comilla doble (ASCII 34) y fueran siempre referidos delimitados
por comillas dobles.
El propsito de este regalo era hacer ms fcil migrar
metadatos desde RDBMSs no estndares. La parte mala es que,
si Ud. elige encerrar un identificador con comillas dobles,
distinguir entre maysculas y minsculas y ser obligatorio
siempre escribirlo entre comillas dobles.
Firebird permite una ligera relajacin de esta regla si se cumple
un conjunto de condiciones muy especial, si el identificador que
fue definido entre comillas dobles:

1. fue definido totalmente en maysculas,


2. no es una palabra clave, y
3. no contiene espacios,...entonces puede ser usado en SQL sin
comillas y sin prestar atencin a maysculas y minsculas (pero
en cuanto le pone comillas alrededor, debe coincidir las
maysculas nuevamente!).
Aviso
No abuse de esta posibilidad! Por ejemplo, si tiene las
tablas "TESTTABLE" y "TestTable", ambasdefinidas entre
comillas dobles, y ejecuta el comando:
SQL>select * from TestTable;
...obtendr los registros de "TESTTABLE", no "TestTable"!
A menos que tenga una razn de peso para definir
identificadores con comillas, se recomienda que los evite.
Firebird acepta sin problemas una mezcla de identificadores con
y sin comillas -por lo que no es problema incluir esa palabra
clave que Ud. obtuvo de una base de datos antigua, si realmente
lo necesita.
Aviso
Algunas herramientas de administracin de base de datos
imponen el entrecomillado en todos los identificadores por
defecto. Trate de elegir una herramienta que tome como
opcional el entrecomillado.

Apstrofos en cadenas

Si se necesita apstrofo dentro de una cadena de Firebird,


puede escapar el caracter del apstrofo precedindolo con
otro.
Por ejemplo, esta cadena producir un error:
'Joe's Emporium' porque el evaluador encuentra el apstrofo e
interpreta la cadena como 'Joe' seguida por algunas
palabras claves desconocidas.
Para convertir el ejemplo en una cadena legal, duplique el
caracter apstrofo:
'Joe''s Emporium'
Note que son DOS comillas simples, no una doble.

Concatenacin de cadenas

El smbolo de concatenacin en SQL es un doble pipe


(ASCII 124, un par sin espacio entremedio). En SQL, el smbolo
+ es un operador aritmtico y provocar un error si intenta
usarlo para concatenar cadenas. La siguiente expresin agrega
el siguiente texto Reportado por: delante de cada apellido:
'Reportado por: ' || LastName
Tenga cuidado con las concatenaciones. Tenga en cuenta
que Firebird generar un error si su expresin intenta
concatenar dos o ms columnas de tipo char o varchar si la
longitud combinada puede exceder el lmite mximo de longitud
para el tipo char o varchar (32 KB).
Vea tambin en las notas ms abajo, Expresiones con NULL,
sobre la concatenacin de expresiones que involucran NULL.
Divisin de un entero por un entero

Firebird respeta el estndar SQL truncando el resultado


(cociente) de una divisin entero/entero al entero menor. Esto
puede generar resultados extraos si no lo tiene en cuenta.
Por ejemplo, este clculo es correcto en SQL:
1/3=0
Si Ud. est actualizando desde una RDBMS que resuelve
divisiones entre enteros a un cociente real, necesitar alterar las
expresiones afectadas para usar un tipo real o numrico
escalado para el dividendo, divisor, o ambos.
Por ejemplo, el clculo anterior puede ser modificado como sigue
para producir un resultado distinto de cero:
1.000 / 3 = 0.333

Expresiones con NULL

En SQL, NULL no es un valor. Es una condicin, o estado, de


un dato, en el cual su valor es desconocido.
Debido a que es desconocido, NULL no puede comportarse como
un valor. Cuando Ud. Intenta realizar operaciones aritmticas
con NULL, o lo mezcla con valores en otras expresiones, el
resultado de la operacin ser siempre NULL. No es cero o
blanco o una cadena vaca y no se comporta como ninguno de
estos valores.
Por lo tanto - aqu hay algunos ejemplos de las sorpresas que se
puede llevar si intenta realizar clculos y comparaciones con
NULL:
1 + 2 + 3 + NULL = NULL
not (NULL) = NULL
'Hogar ' || 'dulce ' || NULL = NULL
if (a = b) then MiVariable = 'Igual';
else
MiVariable = 'Distinta';

Despus de ejecutar este cdigo,MiVariable ser 'Distinta' si


ambos a and b son NULL. La
razn es que la expresin 'a = b' se evala a NULL si al menos
uno de ellos es NULL. En un contexto de if...then NULL se
comporta como FALSE. Por lo tanto, el bloque 'then' no se
ejecuta y se pasa directamente al bloque 'else'.
if (a <> b) then
MiVariable = 'Distinta';
else
MiVariable = 'Igual';
Aqu, MiVariable ser 'Igual' si a es NULL y b no, o viceversa. La
explicacin es similar a
la del ejemplo previo.

Nombre || ' ' || Apellido


resultar NULL si Nombre o Apellido es NULL.

Respaldo (Backup)

La distribucin de Firebird contiene una utilidad para respaldar y


recuperar sus bases de datos. Su nombre es gbak y se puede
hallar en el subdirectorio bin de su instalacin de Firebird. Las
bases de datos de Firebird se pueden respaldar mientras hay
usuarios conectados al sistema haciendo su trabajo normal. El
respaldo ser tomado de una instantnea del estado de la base
de datos al momento de comienzo del mismo.
Hacer respaldos regularmente y ocasionales restauraciones
usando gbak deberan ser tareas programadas de su actividad de
administracin de bases de datos.

Como corromper una base de datos

1. Modificar las tablas de metadatos por su cuenta

Firebird almacena y mantiene todos los metadatos para sus


propios objetos y los del usuario en una base de datos de
Firebird! Ms precisamente, las almacena en relaciones (tablas)
directamente en la base de datos. Los identificadores de las
tablas de sistema, sus columnas y varios otros tipos de objetos
de sistema comienzan con los caracteres RDB$.
Debido a que son objetos de bases de datos ordinarios, pueden
ser consultados y manipulados de la misma manera que los
objetos definidos por un usuario. No obstante, el que pueda no
implica que deba hacerlo. El motor de Firebird implementa un
subconjunto de alto nivel de SQL (DDL) para el propsito de
definir y operar sobre objetos de metadatos, tpicamente a
travs de las sentencias CREATE, ALTER y DROP.
Nunca es poca la recomendacin de que utilice DDL -no
operaciones directas SQL sobre las tablas de sistema- cada vez
que necesite alterar o eliminar metadatos. Difiera las
operaciones caseras hasta que su nivel en SQL y su
conocimiento del motor de Firebird se vuelva muy avanzado. Una
base de datos retocada no es linda de mantener ni barata de
reparar.

2. Deshabilitar la escritura forzada en Windows

Firebird se instala con la escritura forzada (escritura sincrnica)


habilitada por defecto. Los datos modificados y agregados son
escritos a disco inmediatamente luego de ingresados.
Es posible configurar una base de datos para que utilice escritura
de datos asincrnica -donde los datosmodificados o nuevos son
mantenidos en memoria intermedia para ser volcada a disco
peridicamente por el subsistema de E/S del sistema operativo.
El trmino comn para esta configuracin es escritura no forzada
(forced writes off) (o deshabilitada). A veces se recurre a esta
configuracin para incrementar el rendimiento durante
operaciones largas.
La gran advertencia aqu es: no deshabilite la escritura forzada
en un servidor Windows. Ha sido observado que las plataformas
de servidor Windows no vacan el cach de escritura hasta que el
servicio Firebird sea detenido. Aparte de interrupciones de
poder, hay demasiadas otras cosas que pueden ir mal en un
servidor Windows. Si se detiene, el sistema de E/S queda fuera
de alcance y el trabajo de sus usuarios se perder en el proceso
de reinicio.
Nota
Windows 9x y ME no soportan escritura diferida

Deshabilitar la escritura forzada en un servidor Linux

Los servidores Linux son ms seguros para ejecutarse con


escritura forzada deshabilitada temporalmente.
An as, no la deje deshabilitada una vez que su lote mayor de
tareas est completo, a menos que tenga un sistema muy
robusto de soporte contra fallas de poder.

3. Restaurar un respaldo a una base de datos en ejecucin

Una de las opciones de la utilidad gbak (gbak -r[estore]) le


permite restaurar un archivo gbak sobre una base de datos
existente. Es posible que este tipo de restauracin se ejecute
an sin advertir que hay usuarios conectados a la base de datos:
la corrupcin de la base de datos est prcticamente asegurada
como resultado.
Aviso
Tenga en cuenta que necesitar disear sus herramientas de
administracin y procedimientos para prevenir la posibilidad
para cualquier usuario (incluyento SYSDBA) de restaurar a una
base de datos activa si hay algn usuario conectado.

4. Permitir a los usuarios conectarse durante una restauracin

Si Ud. no bloquea el acceso a los usuarios mientras realiza una


restauracin usando gbak -r
(restore) entonces los usuarios sern capaces de conectarse e
intentar operar sobre los datos. En
este caso, el resultado sern estructuras corruptas.

Y ahora?
Como conseguir ayuda

La comunidad de ayudantes voluntarios de Firebird se remonta


bastante tiempo atrs, a varios aos antes que el cdigo fuente
de su antecesor, InterBase 6, fuera hecho de cdigo abierto.
Colectivamente, la comunidad de Firebird tiene todas las
respuestas! Incluso hay gente que ha estado involucrada con l
desde que era un diseo en una pizarra de un bao en Boston.
Visite el sitio oficial del Proyecto Firebird en
http://firebird.sourceforge.net y nase a las listas de soporte de
usuarios.
Visite el sitio de conocimiento Firebird en
http://www.ibphoenix.com para buscar en un vasto conjunto de
informacin sobre desarrollo con y usando Firebird.
Vea la creciente lista de documentacin que ha sido producida
dentro del mismo proyecto Firebird en
http://firebird.sourceforge.net/manual/.
Obtenga el manual Using Firebird y su volumen acompaante,
Firebird Reference Guide. Ambos libros se incluyen en el CD de
IBPhoenix como libros electrnicos (e-books) en formato PDF.
Estn completamente enlazados entre s.

También podría gustarte