Firebird 2.1 es una versión completa que está construida sobre los cambios de arquitectura presentados en la versión mayor 2.0. Gracias a todos que han probado las versiones Alfa y Beta durante 2007 y los primeros meses de 2008, ya que por ellos tenemos una versión que brilla por sus nuevas características y mejoras, incluyendo las tan esperadas Tablas Temporales, un catálogo de nuevos mecanismos de monitoreo en tiempo real, triggers de la base de datos, y muchas nuevas fucniones internas para ser utilizadas en el lenguaje SQL.
Triggers de base de datos | Módulos PSQL definidos por el usuario que pueden ser utilizados para dispararse en varios eventos a nivel de conexión y de transacción. |
Tablas temporales globales | Tablas temporales globales que cumplen con el estándar SQL. Estas tablas predefinidas son instanciadas cuando se solicita dentro de una conexión o transacción para utilizarlas con datos no persistentes, y que la máquina interna de Firebird guada en archivos temporales. |
Expresiones comunes de tablas (CTEs) | Expresiones comunes de tablas que cumplen con el estándar, que permiten hacer consultas dinámicas recursivas. |
Cláusula RETURNING | Cláusula opcional RETURNING para todas las operaciones que regresan una sola fila, como en las instrucciones UPDATE, INSERT y DELETE. |
Instrucción UPDATE OR INSERT | Nueva instrucción UPDATE OR INSERT para actualizar registros. Ahora puedes ejecutar una instrucción que es capaz de realizar ya sea una inserción o una actualización a un registro existente, dependiendo si existe el registro o no.. |
Función LIST() | Una nueva función de agregación LIST() recupera todos los SOMETHINGs en un grupo y los agrega dentro de una lista separada por comas.. |
Nuevas funciones integradas | Docenas de nuevas funciones integradas que reemplazan muchas de las que vienen en las UDFs incluidas con las versiones anteriores de Firebird. |
Blobs de Texto, pueden enmascararse como VARCHAR largos | La maquinaria de Firebird ahora trata los BLOBs de texto que son menores a 32765 bytes de longitud, como si fueran VARCHARs. Las fucniones de cadenas como CAST, LOWER, UPPER, TRIM y SUBSTRING trabajarán con esos BLOBs, así como las concatenaciones y las asignaciones a tipos de cadenas. |
Definir las variables PSQL (triggers y procedimientos) utilizando Dominios | Las variables locales PSQL y argumentos de entrada y salida para procedimientos almacenados ahora pueden ser declarados utilizando dominios en lugar de los tipos de datos básicos. |
COLLATE en PSQL | Collations (ordenaimientos) pueden ser ahora aplicados a las variables y argumentos de PSQL. |
Seguridad de Windows para autentificar usuarios | La seguridad de Windows llamada "Trusted User" puede ser utilizada para autentificar usuarios en un servidor de plataforma Windows. |
Comando CREATE COLLATION | El comando de DDL CREATE COLLATION ha sido agregado para implementar un ordenamiento. |
Ordenamientos Unicode en cualquier lugar | Dos nuevos ordenamientos Unicode pueden ser aplicados a cualquier caracter utilizando un nuevo mecanismo. |
Firebird portado a nuevas plataformas | Ahora ha sido portado a Windows 2003 64-bit (AMD64 and Intel EM64T) en arquitectura clásica, Superserver y Embedded; PowerPC, Mac OSX Intel para 32 y 64-bits. |
Monitoreo de bases de datos usando SQL | Monitoreo de bases de datos en tiempo de ejecución, utilizando SQL, y accediendo a nuevas tablas de sistema virtualizadas. Dentro de ellas existe una llamada MON$DATABASE que permite conocer mucha información sobre la base de datos que previamente no podía ser obtenida usando SQL. Estos detalles incluyen la versión de la estructura en disco (ODS), dialecto SQL, intervalo de barrido, OIT, OAT y más información sobre la base de datos. Es posible utilizar la información de monitoreo para cancelar una consulta en proceso. |
Interfase remota | El protocolo remoto ha sido ligeramente mejorado para que funcione mejor en redes lentas siempre y cuando se utilicen los drivers actualizados (léase clientes). Las pruebas mostraron que las transmisiones y recepciones a la API se redujeron en tiempo cerca de 50%, resultando en un 40% menos tiempo de transmisión y recepción en TCP. |