Thursday, May 03, 2007

JEDI VCS 2.41 client release

The JVCS team is happy to announce the JEDI VCS 2.41 client release,
which is intended as a maintenance release for 2.40 but also includes
some new features.

Red-Soft to provide official support for UIB!!!

Nikolay Samofatov asked what is the process to submit patches and is it possible to obtain commit rights for the project:

Read more here

UIB 2.1 released

New features:
- New FB2 Database properties:
- Support for quoted parametters (:"my param").
- Metadata explorer now read roles (Pierre Yager).
- New Lazarus sample to explore metadatas.

bug fixes:
- TJvUIBEvent bug when destroying component is fixed.
- ExecSQL now call Execute when query is prepared;
- When a query don't return fields, a call to next don't raise exception anymore.
- TJvUIBDataSet: a bug was fixed when the query return only one record.
- RowsAffected now support stored procedures.
- Parsing error corrected with stored procedure.
- Removed Fastcode unit because of bug in asm code.
- bug with "isc_reset_fpe" function that don't exist on unix plateforms is corrected.
- Some bug fixes with Appserver samples.

Wednesday, April 25, 2007

Firebird PHP Generator

SQL Maestro Group is announcing the release of Firebird PHP Generator. It is a freeware but powerful Firebird GUI front-end that allows you to generate high-quality PHP scripts for the selected tables, views and queries for the further working with these objects through the web.

Key features:

  • Data management: adding, editing and deleting records
  • Customization of the HTML appearance
  • Filtering and sorting abilities
  • Data protection with a lot of security settings
  • Lookup options for master-detail relations
  • Integrated script navigation
  • Ability to create multilingual web apps.

Wednesday, April 11, 2007

CopyCat version 2.00.0

> After a long delay, Microtec is pleased to announce the release of the
> long-awaited CopyCat version 2.0!
> CopyCat is a set of Interbase/Firebird replication components for
> Delphi and
> C++Builder. Using CopyCat, you can easily build applications
> comprising advanced
> database replication capabilities, which can be deployed royalty-free.
> Version 2 introduces a number of major improvements, featuring most
> notably:
> - Multi-database replication capabilities (support for MS SQL
> Server, and other databases soon)
> - Transport-layer abstraction (support for replicating over XML-RPC).
> - Conditional table filtering.
> - New per-table options, allowing to specify which operations
> (Insert / Update / Delete) should be logged.
> - Added a TCcReplicator.SyncronizeRows method for manually provoking
> replication of a specified set of records.
> - No more special replication users!
> - Redesigned website, with the addition of a new web forum for
> support and updates (
> - A new flash tutorial to get get to grips quickly with the basics
> of CopyCat, available here:
> - Probably much, much more than I can remember ! ;)
> For more information about this new release, click here :
> General information about CopyCat :
> Demonstration application :
> Evaluation version :
> Note: For users of previous versions who purchased over a year ago, a
> 30% discount will be granted on upgrade. For those who purchased less
> than a year ago, this update is free.
> --
> Best regards,
> Jonathan Neve
> _______________
> CopyCat - advanced Delphi components for database replication,
> supporting CodeGear Interbase, FirebirdSQL and MS SQL Server!
> _______________
> CopyTiger - the ultimate database replication solution for CodeGear
> Interbase, FirebirdSQL and MS SQL Server!

Thursday, March 29, 2007

IBUndelete V2.0 for Firebird and InterBase

IBUndelete V2.0 for Firebird and InterBase is available. This version now supports Firebird 2.0.x and InterBase 2007 database structures and improved undelete algorithms.

Delphi For PHP Released

From Slashdot:

Codegear (now a subsidiary of Borland) has just released version 1.0 of Delphi for PHP, a RAD development environment (running on Windows) that produces standard PHP code. It features a large set of built-in components, including ones that use AJAX for database access; and Codegear is encouraging users to develop their own components. The framework, VCL for PHP, is open source, and documentation follows the PHP model. Initial database connectivity is for MySQL and Interbase (Codegear’s commercial database that spawned the open-source Firebird), but more are promised.

Firebird 2.1 Alpha 1 Ready for Field Testing

The Firebird team is pleased to announce that the first Alpha builds of Firebird V.2.1 are ready for testing. Binary and source kits for Linux and and some Win64 and Win32 kits should start appearing at the Sourceforge mirrors today. For a summary of new features and bug fixes, see HERE.

Wednesday, March 28, 2007

Delphi for PHP - First impressions

Myles Wakeham wrote about Delphi for PHP and firebird issues:

Well I received my downloadable Delphi for PHP today. I haven’t had a huge amount of time to play with it, but there are some very impressive features, but a couple of ‘critical’ missing features for me.

Delphi on Rails?

The developers who brought us Delphi, that Ferrari of Integrated Development Environments, are entering the dynamic language tools race, and this time they are sporting Ruby red.

Firebird 2.0.1 Accepted in Debian unstable

Firebird 2.0.1 package is accepted in Debian unstable

Morfik 07 released

Morfik 07 was released a few days ago.
It uses Firebird as the default database.
Check it out, it is a great tool for generating AJAX web applications.

Optimization of network traffic

Devrace have published a new article “Devrace FIBPlus: Optimization of network traffic in Delphi and C++ Builder applications”. From it you will get to know:
Caching metadata.
Using poRefreshAfterPost option in TpFIBDataSet Options.
Recurrent use of queries.
Client BLOB-filters. «Transparent» packing of BLOB-fields, etc.

Wednesday, March 21, 2007

Firebird point-release 2.0.1

This is the first sub-release since the 2.0 release in November, 2006. It adds no new features (those are coming in v.2.1) but provides a large number of bug-fixes and a few improvements. It is highly recommended that v.2.0 installations be upgraded to get the benefits of these.

Important Change
In Firebird 2.0, a deliberate restriction was imposed to prevent anyone from dropping, altering or recreating a PSQL module if it had been used since the database was opened. An attempt to prepare the DDL statement would result in an "Object in Use" exception.
Many people complained that the restriction was unacceptable because they depended on performing these metadata changes "on the fly". The restriction has therefore been removed. However, the reversion in no way implies that performing DDL on active PSQL modules is "safer" in Firebird 2.0.1 than it was in V.1.5.

Read/download release notes (789 Kb, right-click to save to disk)
Go to the Firebird 2.0.1 Downloads page

Delphi 2007 for Win32 is GOLD!

There are several reports that Delphi 2007 for Win32 gone RTM, and in some countries you can already download it. For more information check
First impressions are that this easily can be THE best Delphi release to date!

Backup remote DB locally

By default, Firebird stores backup files on local disk, but using GBak you can use something like the following to backup a remote database, locally.

gbak -b -z "C:\DatabasesBackup\localbackup.fbk" -verbose -user SYSDBA -password masterkey

Friday, March 16, 2007

Approximate Record Count in Firebird

The following solution was originally posted to the Firebird Support Mail List by Ivan Prenosil.This solution only returns an approximate record count*, and will include records that have been deleted (and not yet garbage collected) as well as records that have been inserted but not yet committed.

/* first update the statistics */

/* Display table names and record counts */

* This will only work on tables that have a primary key.

Tuesday, March 13, 2007

The Firebird 2.0 Book Supplement is available.

If you bought an original copy of The Firebird Book: A Reference for Database Developers directly from IBPhoenix you should have already received an email giving you instructions on how to download your free copy of the Firebird 2.0 Supplement to the book.

Otherwise you might want consider buying the supplement
directly from the IBPhoenix shop.

The Supplement follows the format and layout of the original book,
to make it easy to print out sections and insert them into your
hard copy of the main book. Where applicable, the Errata for the
main book are appended to the respective Supplement chapter.
They can be printed out as lone pages if you wish to tape the
Errata to the applicable pages.

Icons are used throughout to draw your attention to Firebird 2
changes and features that might affect your legacy databases
and applications when migrating. In appropriate places, page
references to the main book are given as a reference to
background information.

Appendix X (Error Codes) and Appendix XI (Reserved Words)
have both been completely updated so that you have an
complete on-hand reference to these sets. New character
sets and collations appear in Appendix VIII.

More details on the supplement can be found at:

Firebird support in Django

Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.
David Elias has updated his patch for Firebird support in Django. All tests are passed with the current version of this patch and author consider it in production-ready quality.

Firebird V2.01 Release Candidate 2 is available

Firebird V2.01 Release Candidate 2 is available for download.

This sub-release introduces a number of bug fixes done since the v.2.0 release in November. It does not add any new functionality to the database engine. A minor improvement is detection of Gentoo or FreeBSD during configuration.

An important reversion to 1.5 behaviour has occurred in this sub-release, as follows:

In Firebird 2.0, a deliberate restriction was imposed to prevent anyone from dropping, altering or recreating a PSQL module if it had been used since the database was opened. An attempt to prepare the DDL statement would result in an "Object in Use" exception.

Many people complained that the restriction was unacceptable because they depended on performing these metadata changes "on the fly". The restriction has therefore been removed. However, the reversion in no way implies that performing DDL on active PSQL modules is "safer" in Firebird 2.0.1 than it was in V.1.5.x.

Friday, February 23, 2007

Delphi for PHP's VCL for PHP supports Firebird!

According to David I , Delphi for PHP will officialy support Firebird:

"Components for database access include: Database, Table, Query, and Stored Procedure. CodeGear's InterBase (6, 6.5, 7.x and 2007) is directly supported using InterBase Express components that talk directly to the InterBase API for high performance database applications. Beyond InterBase, the following databases and database access mechanisms will also supported: ADO, ODBC and OLEDB providers, Access, FoxPro, FrontBase, FireBird, DB2, Informix (7.x), SQL Server (7 and 2000), MySQL, Oracle (8 and 9), PostGreSQL (6.x 7 and 8), SAPdb, SQLite, SQL Anywhere, and Sybase."

It will also be Open Source:

"VCL for PHP is built on several popular open source frameworks and libraries and will itself be open source."

Great news!

Thursday, February 15, 2007

Database Benchmark

DevLoop has just published a free paper (US mirror) [zipped .pdf] benchmarking some popular database systems such as MySQL, PostgreSQL, Firebird, DB2, Informix, Sybase SQL Anywhere, on Linux using JDBC. The focus here is on non-real setups where we can analyze the individual aspects that might affect system performance. The code is available (GPL) so that anyone can reproduce the results.

Tuesday, February 13, 2007

Hotfix #10 Rollup install for Developer Studio

New hotfixes for Delphi, C++Builder, C#Builder, Turbo Delphi, Turbo Delphi for .NET, Turbo C++, and TurboC# are now available for download

DelphiSpeedUp Delphi/BCB/BDS IDE plugin Version 2.4

DelphiSpeedUp Version 2.4 is released:

  • Version 2.4 (2007-02-12)
    • Added: FastCode 0.6.4
    • Added: Lots of new faster functions.
    • Added: Option "Disable FastQuit" that removes the "Close all and terminate process" menu item from the file menu.
    • Fixed: _LStrLCmp/_WStrWCmp calls from the RTL itself weren't replaced by _LStrEqual/_WStrEqual where applicatable.
    • Fixed: Package unloading hadn't correctly cleared the unit name hash table.
    • Fixed: The splash progressbar was painted over the "Registered..." text in the splash screen.
    • Fixed: French users got German menu items, a missing caused the menu items to be English instead of German.
    • Improved: Overhead for inlining and function splitting (_LStrCmp=>_LStrEqual) is now faster.

Saturday, February 10, 2007

CodeRage 2007 Virtual Conference

CodeGear has announced a virtual online conference that will take place in the second week of March. The conference is called CodeRage. The CodeRage 2007 web site has only limited information for now, but includes the date, March 12-16. Here is the conference logo:

Delphi Astro, Delphi Spacely

Two names popping up in this delphi.non-technical thread for new Delphi versions. According to the thread:

Delphi Spacely - Delphi for Vista (Win32 and AJAX)
Delphi Astro - Delphi for PHP

The source of this information is a Swedish reseller. More info in Swedish through this link.

This sounds very interesting to me. (It's February not April so......)

Keep an eye on CodeGear for possible announcements the coming days.

Delphi IDE and RTL/VCL performance improvements

Steve Trefethen writes about Delphi improvements...
" Lately, there's been a lot of effort put into improving the Delphi IDE's UX and wanted to comment briefly that in the past week alone we've made some great progress. For example, there have been recent improvements in: IDE flicker (now nearly flicker free) Desktop .. "

Read more here

Thursday, February 08, 2007

Want to run Firebird on Windows Vista?

Check out this blog post from Dmitry Kouzmenko about how to run FB on Vista and not loose performance.

The Ideal Database for Your Business?

This paper from CodeGear tries to convince users that InterBase 2007 is the best database for them. It even mentions “alternatives” like MySQL, PostgreSQL and …FIREBIRD 1.5!

Of course, like any marketing paper, it tries to show that IB is the best option ;-) But it is curious that they decided to compare IB 2007 with FB 1.5 (instead of 2.0). Also, it seems that most of their “complaints” about FB, like the lack of SMP support, etc. are features that are currently being merged from Vulcan into Firebird 3. The matter of Firebird not having an official support “entity” is shown as a “problem”, but I totally disagree with this, since there is a huge and very active community offering (very good) support for free in discussion lists, and some comercial companies too. I believe that currently Firebird support is even better than IB support from CodeGear.

Anyway, the simple fact that FB is mentioned probably will attract some attention to the project ;-)

Firebird 1.5.4 is released

The Firebird team is pleased to announce that v.1.5.4 of Firebird for
Windows and Linux is now released and awaiting your pleasure. Kits
should be available from many sites today and more over the weekend.

A number of additional retrospective fixes have been introduced for
bugs that became apparent and were fixed in the Firebird 2 tree
during the Firebird 2.0 beta cycle.

This is probably the final sub-release of Firebird 1.5.x. It adds no
new functionality, although building the software for both Classic
and SuperServer for HP-UX11 is now supported.

The Firebird Team

Friday, February 02, 2007

Evans Data Survey mentions Firebird

Today we have a survey on Open source software. If you use Open Spurce in your development, please take our survey and help influence the course of Open Source Software. Your opinions will be read by the largest platform and tools companies and you will be automatically entered into a drawing to win $500.

To take the survey, please go to:

Ed. Note: Firebird is mentioned in 3 questions.

Choosing the right database management system

Choosing the right database management system by Arif Mohamed on mentions Firebird.

New nbackup (or online dump) myth

New nbackup (or online dump) myth by by Dimitri Kuzmenko

The Examiner Newspaper & Firebird

The Examiner Newspaper (Tasmania, Australia) was approached to be a supporting partner in Ken Gourlay's solo sailing endeavour around the world as a fund raising effort for research into eyesight disorders. His website was designed and built around Firebird. Thanks to Nigel Weeks for the information.

Monday, January 29, 2007

Firebird Embedded and .NET

Jiri Cincura have created a small how-to for Firebird Embedded and .NET.

Saturday, January 27, 2007

Getting Started With Delphi -- A list of tutorials

An intrepid new Delphi user posted this in the newsgroups:

Hi everyone,
I'm trying to learn about Delphi.Please give me some advice to learn
Delphi for beginners.Thanks all.

Nick Hodges posted few links:

Marco Cantu's Essential Delphi Tutorial
Neil Moffat's Marvelous Delphi Basics
Liz's Delphi Tutorial
3DBuzz's Delphi Tutorials
Creating Your First Application on The Delphi Wiki's A Beginner's Guide to Delphi

BlazeTop (SQLHammer) is available now

BlazeTop (former SQLHammer) version is available for download

What’s new in version

New features and enhancements:

1.Borland InterBase 2007 support has been added:
  • the instance_name property has been added to the server registration options;
  • now scripts for InterBase 2007 can have a clause BATCH START; ... BATCH EXECUTE;

  • 2.Improved mechanism of checking Open Office data export; it enabled us to increase the performance.

    Bugs fixed:

    1.ALTER PROCEDURE did not operate correctly if the procedure used declared variables. Fixed.
    2.The SQLEditor worked incorrectly when you commented/uncommented the selected text in the pop-up menu.

    Friday, January 26, 2007

    Firebird 2.0.1 RC

    Release Candidate kits of Firebird 2.0.1 are now available for download at the Firebird main site.

    This sub-release introduces a number of bug fixes done since the v.2.0 release in November. It does not add any new functionality to the database engine. A minor improvement is detection of Gentoo or FreeBSD during configuration.

    An important reversion to 1.5 behaviour has occurred in this sub-release, as follows:

    In Firebird 2.0, a deliberate restriction was imposed to prevent anyone from dropping, altering or recreating a PSQL module if it had been used since the database was opened. An attempt to prepare the DDL statement would result in an "Object in Use" exception.

    Many people complained that the restriction was unacceptable because they depended on performing these metadata changes "on the fly". The restriction has therefore been removed. However, the reversion in no way implies that performing DDL on active PSQL modules is "safer" in Firebird 2.0.1 than it was in V.1.5.x.

    Thursday, January 25, 2007

    Tooling Up With CodeGear

    Zeichick's Take: Tooling Up With CodeGear by Alan Zeichick on SD Times.

    Open source is good for the economy

    Open source is good for the economy, according to a report published by the European Commission. More details on The Register.

    IBOjects V4.7

    IBOjects V4.7 with support for Firebird V2.0 can be downloaded for evaluation.

    New DBManager available

    DBTools Software announces the availability of the DBManager Professional Enterprise Edition V3.4.2 and DBManager Standard Edition V3.2.2.

    Steve Trefethen started Open Source Delphi Page

    If you have some Open Source delphi project, please tell Steve about it.

    Steve Trefethen's
    Delphi Open Source Projects page.

    Firebird Null Guide 1.0 online

    The new Null Guide is finally online, at its usual locations:

    The Firebird 2 Quick Start Guide has been updated

    The Firebird 2 Quick Start Guide has been updated:

    PDF version will be built in a couple of days.

    ANN: The InterBase and Firebird Developer Magazine #4

    The owners of the InterBase and Firebird Developer Magazine and IBPhoenix today agreed to collaborate in producing future issues of the magazine. Under the agreement, free copies of the magazine will be distributed to IBPhoenix Support and Subscription customers automatically in advance of publication.

    New sessions in IBExpertLive! Free Firebird training and Conference videos online!

    What is IBExpertLive?

    HK-Software has implemented a streaming system based on the Firebird database
    server, which publishes pictures and audio, as needed to view the presentations from
    the 2004, 2005 and 2006 Firebird Conferences. There are also IBExpert
    tutorial videos enabling you to learn more about working with Firebird and
    InterBase with IBExpert. There is currently about 55GB of video data available,
    with around 200 hours of firebird-related presentations from last two Firebird
    Conferences and other events.

    To use IBExpertLive, you need a firebird connection via Internet using port 13050 to our
    server on IP If it does not work, please check your firewall settings.

    The IBExpertLive Player is freeware and included in IBExpert Setup or can be downloaded
    seperatly here

    The sessions are also free, but the player requires a free email registration

    An overview of all sessions can be found below (partly in german language).

    110 FBCON2006 B01-Paul Ruizendaal - Solution Stacks Built on Firebird and PHP - Another Flame in the Lamp?
    111 FBCON2006 C01-Milan Babuskov - Developing Cross Platform Aplications with Firebird and wxWidgets
    112 FBCON2006 B02-Martijn Tonies - The Firebird System Tables
    113 FBCON2006 C02-Mauritio Longo - Supporting Complex On Line Systems with Satellite Databases
    114 FBCON2006 B03-Thomas Steinmaurer - Owner Migration the Easy Way
    115 FBCON2006 C03-Andrew Morgan - Towards a Universal UDF Testing Framework
    116 FBCON2006 B04-Björn Reimer/Dirk Baumeister - Firebird Clients and System Tables
    117 FBCON2006 C04-Fikret Hasovic - Cross - Platform Development Using Lazarus
    118 FBCON2006 A05-FirebirdFoundation - Opening and Welcome(only just audio)
    119 FBCON2006 A06-PaulReeves - Building Firebird on Windows and Linux
    120 FBCON2006 B06-DmitrySibiryakov - Replication with IBReplicator
    121 FBCON2006 C06-CarlosCantu - New Shutdown Modes and Backups in Firebird 2.0
    122 FBCON2006 A07-DmitryYemanov - Cost-based Optimization and Statistics
    123 FBCON2006 B07-ErickSasse - N-Tier applications with Firebird and RemObjects DataAbstract
    124 FBCON2006 C07-HolgerKlemt - Creating modern database webaplications using Firebird, php and AJAX
    125 FBCON2006 A08-IvanPrenosil - Data Types in Practice/Optimizing Counts(Dual Topics)
    126 FBCON2006 B08-GaryFranklin/BillOliver - Real World Applications Using Firebird
    127 FBCON2006 C08-AlexSkvirski - Firebird Connectivity Tools or is there any Performance loss out there?
    128 FBCON2006 A09-RomanRokytskyy - External routines:interface, usage and possibilities
    129 FBCON2006 B09-MauricioLongo - Applications with Morfik WebOS and Firebird
    130 FBCON2006 C09-DmitriKouzmenko - Optimizing Server Performance
    131 FBCON2006 A10-HolgerKlemt - Creating Transaction Logs in Interbase
    132 FBCON2006 B10-MilanBabuskov - Managing Metadata Chaanges
    133 FBCON2006 C10-GaryFranklin/BillOliver - Delivering and using the Vulcan embeddet Server as Part of SAS
    134 FBCON2006 D11-VladislavHorsun - New SQL Features in coming Versions of Firebird
    135 FBCON2006 B12-RomanRokytskyy - Jaybird new release new features
    136 FBCON2006 C12-DmitriKouzmenko - Database Health and Corruption
    150 FBCON2005 Andrew Morgan - Embedding and using sophisticated mathematics in Firebird (FBC2005)
    151 FBCON2005 Ann Harrison - Detecting correcting and preventing database corruption (FBC2005)
    152 FBCON2005 Evgeney Putilin - Firebird and Java Stored Procedures (FBC2005)
    153 FBCON2005 Nando Dessena - Deploying Firebird transparently on Windows (FBC2005)
    154 FBCON2005 Paul Reeves - From Basic to Advanced ISQL scripting (FBC2005)
    155 FBCON2005 Fikret Hasovic - Open source Delphi (FBC2005)
    156 FBCON2005 Luiz Paulo de Oliveira Santos - Firebird API in Delphi Lazarus and Free Pascal (FBC2005)
    157 FBCON2005 Jason Wharton - IB Objects for Newbies (FBC2005)
    158 FBCON2005 Luiz Paulo de Oliveira Santos - Techniques for migrating from MySQL to Firebird (FBC2005)
    159 FBCON2005 Stefan Heymann - What Developers Should Know about Character Sets and Unicode etc (FBC2005)
    160 FBCON2005 Lucas Franzen - STORED PROCEDURES (FBC2005)
    161 FBCON2005 Claus Heeg - Migration and integration of other databases into Firebird using Cold Fusion
    162 FBCON2005 Holger Klemt - Setting Up a bidirectional Replication based on EXECUTE STATEMENT Commands
    163 FBCON2005 Paul Ruizendaal - Solution Stacks Built on Firebird and PHP - Another Flame in the LAMP
    164 FBCON2005 Pavel Cisar - Firebird Quality Assurance (FBC2005)
    165 FBCON2005 Dmitri Kouzmenko - Firebird Performance Optimization for Different Applications (FBC2005)
    166 FBCON2005 Thomas Steinmaurer - Audit Trails Transaction Log Redo with the IB LogManager product family
    167 FBCON2005 Milan Babuskov - The power of Firebird events (FBC2005)
    168 FBCON2005 Martijn Tonies - The Firebird system tables (FBC2005)
    169 FBCON2005 Kim Madsen - SOA using kbmMW (FBC2005)
    170 FBCON2005 Daniel Magin - Developing DataBase Application with Delphi 2006 (FBC2005)
    171 FBCON2005 Mauricio Longo - Dynamic Databases - A Conceptual Overview (FBC2005)
    172 FBCON2005 Carlos Cantu - PSQL in Action (FBC2005)
    173 FBCON2005 Jim Starkey - Configuring Firebird and Vulcan (FBC2005)
    174 FBCON2005 Jim Starkey - Vulcan status features and goals (FBC2005)
    175 FBCON2005 Arno Brinkman - Understanding the Optimizer I (FBC2005)
    176 FBCON2005 Paul Beach Dmitry Yemanov - Firebird future development (FBC2005)
    177 FBCON2005 Mauricio Longo - FireQ - Firebird Based Messaging Infrastructure (FBC2005)
    178 FBCON2005 Roman Rokytskyy - JayBird - JCA/JDBC driver for Firebird (FBC2005)
    179 FBCON2005 Roman Rokytskyy - JayBird - JCA/JDBC driver for Firebird (FBC2005)
    180 FBCON2005 Lester Caine - Firebird on PHP Integrate or Abstract (FBC2005)
    181 FBCON2005 Jeanot Bijpost - An introduction to Cathedron (FBC2005)
    182 FBCON2005 Andrew Morgan - Creating and managing recursive structures (FBC2005)
    183 FBCON2005 Holger Klemt - Server Performance - How to make your application run faster (FBC2005)
    184 FBCON2005 Ann Harrison - First steps in performance tuning (FBC2005)
    185 FBCON2005 Milan Babuskov - FlameRobin - administration tool for Firebird DBMS (FBC2005)
    186 FBCON2005 Claus Heeg - Building ERP web applications based on Firebird and cold Fusion (FBC2005)
    187 FBCON2005 Serg Vostrikov - Getting Started with FIBPlus (FBC2005)
    188 FBCON2005 Arno Brinkman Dmitry Yemanov - Under the hood Data access paths (FBC2005)
    189 FBCON2005 Pavel Cisar - Making your own Firebird PowerTools with Python (FBC2005)
    190 FBCON2005 Stefan Heymann - Using Firebird for Quality Management Software (FBC2005)
    191 FBCON2005 Serg Vostrikov - Special FIBPlus features network traffic optimization and FIBPlus
    192 FBCON2005 Fikret Hasovic - Firebird in n-tier setup with Delphi and kbmMW (FBC2005)
    193 FBCON2005 Jeanot Bijpost - From Model Driven Development to Model Driven Architectures (FBC2005)
    194 FBCON2005 Alex Peshkov - New security features in Firebird 2.0 (FBC2005)
    196 FBCON2005 Arno Brinkman - Understanding the Optimizer II (FBC2005)
    200 FBCON2004 Frank Ingermann - The Sparkey of the year Event (FBC2004)
    201 FBCON2004 Ann Harrison - QLI (FBC2004)
    202 FBCON2004 Helen Borrie - Creating a shop (the new Firebird Example Database) (FBC2004)
    203 FBCON2004 Helen Borrie - Stocking the Shelves and Browsing the store (FBC2004)
    204 FBCON2004 Arno Brinkmann - Understanding the Optimizer in Firebird (FBC2004)
    205 FBCON2004 Arno Brinkmann - The Optimizer in SQL Examples (FBC2004)
    206 FBCON2004 Pavel Cisar - Wrestling Firebird (FBC2004)
    207 FBCON2004 Pavel Cisar - Firebird QA (FBC2004)
    208 FBCON2004 Lucas Franzen - STORED PROCEDURES I (FBC2004)
    209 FBCON2004 Lucas Franzen - STORED PROCEDURES II (FBC2004)
    210 FBCON2004 Ann Harrison - Lock print (FBC2004)
    211 FBCON2004 Frank Ingermann - Client Performance (FBC2004)
    212 FBCON2004 Frank Ingermann - FBFreeDB (FBC2004)
    213 FBCON2004 Holger Klemt - The Power of “Execute Statement” (FBC2004)
    214 FBCON2004 Holger Klemt - corrupt Databases, examples and Solutions (FBC2004)
    215 FBCON2004 Holger Klemt - Firebird performance Workshop (FBC2004)
    216 FBCON2004 Manuel Morbitzer - PHP and Firebird (FBC2004)
    217 FBCON2004 Manuel Morbitzer - Firebird and Visual Studio .NET (FBC2004)
    218 FBCON2004 Paul Reeves - Building Firebird Installation Kits for Win32 (FBC2004)
    219 FBCON2004 Paul Reeves - Firebird System Tables (FBC2004)
    220 FBCON2004 Nicolay Samofatov - External tables (FBC2004)
    221 FBCON2004 Nicolay Samofatov - new backup technology (FBC2004)
    222 FBCON2004 Jim Starkey - Vulcan Architecture (FBC2004)
    223 FBCON2004 Jim Starkey - Vulcan Design Goals (FBC2004)
    224 FBCON2004 Thomas Steinmaurer - Serverseitige Programmier-Techniken (FBC2004)
    225 FBCON2004 Thomas Steinmaurer - Neuerungen in Firebird 1.5 (FBC2004)
    226 FBCON2004 Martijn Tonies - An Introduction to Firebird for database developers (FBC2004)
    227 FBCON2004 Martijn Tonies - The Firebird PSQL language (FBC2004)
    228 FBCON2004 Jason Wharton - IBO and Firebird / IBO Advanced (FBC2004)
    229 FBCON2004 Hilmar Brodner - AvERP I Grundlagen und Administration (FBC2004)
    230 FBCON2004 Hilmar Brodner - AvERP II Programmierung (FBC2004)
    231 FBCON2004 Paul Ruizendaal - Moving applications from Oracle to Firebird (FBC2004)
    232 FBCON2004 Artur Anjos - Using Firebird over the Internet (FBC2004)
    233 FBCON2004 Bastian Morbitzer - PHPtree - Firebird basierende PHP Anwendung für Dokumentation und
    Hilfssystem (FBC2004)
    234 FBCON2004 Bastian Morbitzer - The Future of a global Firebird Online Documentation System (FBC2004)
    235 FBCON2004 Lester Caine - PHP - Life after Builder6 (FBC2004)
    236 FBCON2004 Marc o Dunehue - Firebird and Java I (FBC2004)
    237 FBCON2004 Marc o Donehue - Firebird and Java II (FBC2004)
    238 FBCON2004 Bernd UA - Delphi 8 and Firebird .NET Provider (FBC2004)
    101 HK Presentation: Improving performance with IBExpert (Budapest 02/2005)
    102 HK Presentation: A review of IBExpert’s range of functions (Budapest 02/2005)

    German only:

    001. HK German Tutorial: Grundlagen SQL und Einrichtung IBExpert Demodatenbank
    002. HK German Tutorial: Einfache Firebird SQL Befehle
    003. HK German Tutorial: Tabellen mit SQL verknüpfen
    004. HK German Tutorial: Where Bedingungen
    005. HK German Tutorial: Erstellen einer eigenen Datenbank
    006. HK German Tutorial: Tabellen erstellen
    007. HK German Tutorial: Tabellen mit Fremdschlüssel erstellen
    008. HK German Tutorial: Benutzer erstellen und Rechte vergeben
    009. HK German Tutorial: Datenbank Parameter und Hintergrundwissen
    010. HK German Tutorial: Tabellen abfragen, Indizes erstellen und SQL Performance vergleichen
    011. HK German Tutorial: Auswirkungen langer Char Felder
    012. HK German Tutorial: UDF benutzerdefinierte Funktionen einbinden
    013. HK German Tutorial: IBExpert Demo Database Collection
    014. HK German Tutorial: Datenbankdesigner Entity Relationship Modeling
    016. HK German Tutorial: Erstellen eines triggerbasierenden Transaktionslogs
    017. HK German Tutorial: Logging in IBExpert und Trigger in der Employee Datenbank
    018. HK German Tutorial: Sprachelemente für Stored Procedures
    019. HK German Tutorial: Rekursionen in Prozeduren und erste eigene Prozeduren
    020. HK German Tutorial: Prozeduren entwickeln und optimieren
    021. HK German Tutorial: Trigger entwickeln für Transaktionsprotokolle
    022. HK German Tutorial: Views und Updatable Views
    023. HK German Tutorial: Views für mehrere Tabellen
    024. HK German Tutorial: Wie funktioniert Firebird intern? I
    025. HK German Tutorial: Wie funktioniert Firebird intern? II
    026. HK German Tutorial: Wie funktioniert Firebird intern? III
    027. HK German Tutorial: Wie funktioniert Firebird intern? IV
    028. HK German Tutorial: FBConnections, gfix, Cache und sonstige Parameter festlegen
    029. HK German Tutorial: IBETransactionMonitor, Server Properties, Backup Restore, Logging,
    030. HK German Tutorial: IBExpertSQLMonitor, Firebird ODBC und MS Access, Export, IBEBlock ODBC
    031. HK German Tutorial: IBExpert Spezialfunktionen, Plananalyzer, Selektivität,Kommandozeilenprogramme,
    External Files
    032. HK German Tutorial: Installation und Vergleich FB15-FB20, Performanceanalyse, IBExpert Doku, Extract
    Metadaten, Datenbanken reparieren
    033. HK German Tutorial: Alias.conf, firebird.conf, Temp Pfad und Dateien
    034. HK German Tutorial: firebird.log, Freeadhocudf
    035. HK German Tutorial: Demodatabase Transaktionslog, rfunc UDF, Replikation
    036. HK German Tutorial: Internet Firebirdverbindung mit Zebedee
    037. HK German Tutorial: Testdaten generieren, Performancemessung, Indizes, Plan, Selektivität,
    038. HK German Tutorial: Set Statistics, Indexoptimierung, order by, Fremschlüsselindizes
    039. HK German Tutorial: Datenbankstatistik, Backup Restore Optimierung,
    040. HK German Tutorial: Trigger statt FK, MGA, Versionierung
    041. HK German Tutorial: SQL,in,exists,updateable views,Performance, firebird.conf Konfiguration, lange
    042. HK German Tutorial: external files,csv export,
    043. HK German Tutorial: IBExpert Export
    044. HK German Tutorial: CSV Import Insertex, Tabelle in andere Datenbank kopieren,
    045. HK German Tutorial: IBExpert.usr Menüs einschränken, Sprachanpassung
    046. HK German Tutorial: mit ibeblock Metadatenextract per Kommandozeile automatisieren und mit DLL in
    eigene Programme integrieren
    047. HK German Tutorial: Metadatenextract mit Daten, Blobunterstützung in Scripts
    048. HK German Tutorial: ibeblock ODBC Zugriff, MS Access Datenbanken einbinden,Daten von ODBC nach
    Firebird kopieren
    049. HK German Tutorial: ibeblock Datenbanken verknüpfen
    050. HK German Tutorial: Dateien importieren, Bilder importieren per Script
    051. HK German Tutorial: Dateien per Script updaten
    052. HK German Tutorial: Verbindungen über das Internet mit Zebedee verschlüsseln und komprimieren, Dyndns
    mit nutzen
    053. HK German Tutorial: Performance Internetbetrieb von Datenbankservern, Pingzeit,Route
    054. HK German Tutorial: HK Services, Transaction Monitor
    055. HK German Tutorial: Delphi BDE Applikationen auf IBObjects umstellen mit GReplace
    056. HK German Tutorial: Datenbanken nachträglich Character Set und Dialekt konvertieren
    057. HK German Tutorial: Extrahieren von Daten und ausführen per DLL
    058. HK German Tutorial: Applikation Optimieren durch Einsatz spezieller IBO Komponenten, IB_DSQL,
    059. HK German Tutorial: Performancevergleich IBO Query, IBO Cursor, BDE Query etc.
    060. HK German Tutorial: Performanceprobleme durch Autobackground Commit Close Open vermeiden, Master
    061. HK German Tutorial: Lazarus: Open Source Delphi für Windows und Linux, Zeos, AvERP Open Source
    Warenwirtschaft, Datenmodellierung, Laufzeitformular

    Thursday, January 18, 2007

    Oracle Plugs 51 Security Flaws

    Oracle on Tuesday released fixes for 51 vulnerabilities that affect its software products. The update is part of the company's quarterly patch cycle. Oracle preannounced its patch release Thursday, when, for the first time, it published an advance notification so customers could plan ahead to apply the fixes.

    MSBuild in Next Delphi

    Nick Hodges has some interesting news about the next version of Delphi.

    In a non-tech thread in the forums, Nick Hodges (Delphi Product Manager) has stated that "the next release of Delphi will use MSBuild as the build engine". This is very good news, as the Project Manager in recent versions of Delphi got some extra features and a change to install build tools, but with limited capabilities. MSBuild, instead, is the Microsoft build tool used in Visual Studio and allows developers to customize the build (and deployment) process with many different tasks.

    At the moment you can achieve something similar using third-party build tools, like FinalBuilder. I think this is a very good addition, also because the same build process will be available within the IDE and fromt he command line. Moreover, you'll be able to use MSBuild also for C++ Builder (while in Visual Studio C++ compilations are not managed by MSBuild). More about this in David Dean blog.

    Wednesday, January 17, 2007

    JEDI VCS 2.41 server release

    The JVCS team is happy to announce the JEDI VCS 2.41 server release,
    which is intended as a maintenance release for 2.40 but also includes some
    new features.

    What's changed:

    - support of MySQL5 directly out of the installer (ZEOS 6.6)
    - Multiple logins with the same user is now possible which allows the simultaneous use of the standalone JVCS Client and the JVCS IDE client
    - faster file transfer (get, checkout, checkin...) especially on large files and in LAN environment
    - minor bug fixes

    Complete change history is available through the JVCS tracker on

    Downloads are available from here:

    Updating is quite easy, stop the JVCS server application or the JVCS
    service, run the installer, restart server application or service. There is no
    database change.

    JVCS 2.41 client release will follow soon.
    We also will release a unstable JVCS 2.5 with branching support soon.

    Friday, January 12, 2007

    Vulcan and Firebird merging plan

    Dmitry Yemanov posted to the Firebird-devel list his proposals for merging the Firebird 2 code with the Vulcan code.

    Here it comes, with comments from others:

    Key Points

    1) The result of the merge is a new CVS tree
    2) Modules refactored by Jim are taken from the Vulcan tree
    3) The rest is taken from the FB tree
    4) All the pieces are adjusted to fit each other
    5) Vulcan's code is fixed to use the project coding rules


    1) The common library will mostly based on the FB
    class library with some classes taken from Vulcan (QSort, SyncObject,
    StatusVector, etc). The common string class is Firebird::String. The
    exception handling is based on the FB classes with some changes. Based
    on Alex's research, I conclude that the memory manager should be taken
    from Vulcan and adapted to the FB pool infrastructure. The configuration
    stuff is also taken from Vulcan.

    - Dmitry (syncs and other platform specifics)
    - Alex (memory management, classes library, exceptions)
    - Adriano (config stuff) -- ???

    2) The Y-valve is taken from Vulcan and fixed to fit the new common
    library and the project coding conventions. An exception handling and
    MT-safety review is required, as well as some cleanup.

    Responsible: Dmitry

    3) The lock manager is taken from Vulcan, cleaned up and reviewed. I
    don't agree with the way how the two cache modes are implemented there,
    it looks ugly. Also, we need to carefully examine all the Windows and
    Solaris specific changes made there.

    Responsible: Dmitry

    4) The JRD files are merged from the both trees. The page cache code and
    the metadata classes (as well as some other refactored code like blob
    classes, the mover, etc) are taken from Vulcan with a careful review.
    Other files (cmp/exe/dfw/etc) are taken from FB and adjusted to the
    Vulcan synchronization and metadata cache classes.

    Arno Brinkman commented: opt, btr, idx, Rsbxxx modules should be inherited from Vulcan IMO.
    Only missing pieces are the INTL stuff, which is not that big.
    //end of comment

    Dmitry Yemanov commented: As for Rsb modules, I agree. The same for opt.cpp and Optimizer.cpp, as
    they're already in sync with HEAD. I just want them to be ported at the end.

    But why do you want to preserve Vulcan's btr.cpp and idx.cpp? AFAIK,
    HEAD is more up-to-date in those parts (and more patches are in the way).
    //end of comment

    - Dmitry (synchronization, metadata, other)
    - Vlad (page cache, metadata)
    - Alex (execute statement, authentication)
    - Adriano (INTL stuff, other)

    5) The DSQL files are taken from Vulcan, with a total review of the
    metadata cache integration. This is the hardest part of the merge, IMO.
    I'm not satisfied with the half-way DSQL integration done in Vulcan, but
    I'm not sure we can offer something better in the short term. Changes in
    pass1/gen/make are ported from the FB codebase. The parser generator is
    most likely to be migrated from FB, it just lacks the MT-safe skeleton
    implementation. A replacement with a hand-made RDP can be considered in
    the long term.

    Arno Brinkman commented: Although it's for the long term, i send you something for review a long time ago?
    //end of comment

    Dmitry Yemanov commented: Yep, and I didn't have time to comment on it properly. Mea culpa.
    //end of comment

    Responsible: Vlad, Dmitry, Adriano, Alex

    6) The remote subsystem is taken from Vulcan, unless Alex objects. The
    multi-client mode related fixes by Alex, protocol extensions by
    Alex/Vlad/myself and various bugfixes should be backported from FB.
    Amount of our changes there is not very big, so it looks doable.

    Responsible: Alex, Vlad, Dmitry

    7) The entire INTL aware code is taken from the FB codebase, a proper
    MT-related review is to be performed.

    Responsible: Adriano

    8) Utilities code is to be taken from FB, the only merge-related thing
    is an interface with the Vulcan services provider. The UDF libraries are
    taken from FB. Guardian is to be considered for dying.

    Responsible: ?

    Special Notes

    1) The non-shared-cache mode is preserved, but it should be
    implemented using the config switch rather than #ifdefs. In particular,
    it means that synchronization primitives should unconditionally exist in
    all engine favors.

    2) The internal DSQL implementation (FbDbc) is not ported from Vulcan.
    We should either make it much more light-weight (to not carry the
    redundant semantics like metadata representation), or consider some
    other connectivity code, or keep GDML in the sources for the time being.
    Any volunteer for this task?

    3) I don't expect any serious INTL issues, as most of the INTL aware
    code will be taken from FB, but I expect Adriano to track all the
    related changes.

    4) The RSB refactoring is ported after all else is done. Being not
    critical part of Vulcan/FB3, it was one of the most buggiest parts of
    Vulcan and I'm not sure we solved all the issues. Also, Arno intends to
    make some improvements based on that code in the meantime.

    Arno Brinkman commented: Almost done, only more testing and some refactoring left.
    //end of comment

    Dmitry Yemanov commented: That's great :-)
    //end of comment

    5) If anybody not explicitly counted as an assignee above would like to
    assist in some parts, it would be appreciated.

    6) New code is committed into CVS on a per subsystem basis.

    Merge Steps

    1) HEAD is cleaned up to follow the new threading rules. It mostly means
    getting rid of the non-MT code branches (including signal-based ASTs).
    We could also perform whatever global cleanup we consider useful. It
    could be done in a separate CVS branch, if we'd like to keep the cleaned
    version reserved for production.

    Status: 80% done (in my private tree).

    2) Lock manager is replaced with the Vulcan's one, we perform some dbb
    adjustments and global synchronizations. Scheduler is removed. At this
    point we have a skeleton of the non-shared-cache implementation (based
    on the CS code) that could be tested.

    Status: 50% done (LM only).

    3) Y-valve is ported from Vulcan, DSQL is trivially moved into the
    engine. At this point we have a proper architecture in place.

    Status: 50% done (Y-valve only).

    4) JRD is merged. We get rid of the SUPERSERVER/SUPERCLIENT/REQUESTER
    conditionals. NBACKUP is carefully reviewed for compatibility with the
    Vulcan's page cache.

    5) DSQL is merged. Compiled statement cache is implemented.

    6) INTL is adjusted to the new code.

    At this point, we can start testing the embedded mode.

    7) Remote subsystem is replaced with Vulcan's one.

    Here we have the server mode working.

    8) Utilities and services are adjusted to the new code.

    Of course, some items could be moved in time, e.g. the remote subsystem
    merge could be started earlier.

    Your Major Question

    Why is FB used as the background for the whole tree if many of its
    subsystems will be replaced with Vulcan's ones? My answer consists of
    three parts:

    1) Using the FB codebase, we may have the initial steps performed
    without losing the stability much (and hence test the beast
    incrementally), because we replace subsystems one per one. With Vulcan
    being the base point, we start with bugs everywhere.

    2) Number of post-Vulcan-diverge changes in FB is really large. Tracking
    them one by one is not going to work and using a visual diff tool will
    be much complicated for the refactored modules. In this situation,
    porting the design ideas into a working code looks easier to me.

    3) Unfortunately, Vulcan's code is far from looking as a production one.
    Currently, it's a mixture of FB-style and Vulcan-style code that behave
    differently, with some parts being commented out or totally broken. It
    requires a total cleanup, reformatting, functional review and fixing. I
    doubt we can afford that now.

    Comments, additions, critique?


    Papers of Firebird Conference 2006

    The papers (where available) for the Firebird Conference 2006 talks are available for download here (you need to right click and use “Save As”).

    Sunday, January 07, 2007

    LinuxQuestions 2006 Members' Choice Awards has just launched the voting for its 2006 Members' Choice Awards. The awards enable Linux community members to select their favorite products of the year in 21 categories, including distribution, browser, office suite, desktop environment, and database.

    The polls will close on Feb. 18, with winners being announced shortly afterward. Last year's winners include Ubuntu, Firefox, and MySQL. Two years ago Firebird WON!

    Voting in all categories can be done here. Free registration is required at in order to vote.

    Thursday, January 04, 2007

    Devrace BlazeTop (former SQLHammer) version 1.7

    Devrace BlazeTop (former SQLHammer) version 1.7 is available for immediate download. Besides many fixes and enhancements it includes Firebird 2.0 support, SQL Editor optimization (text syntax highlighting) and full UNICODE support. Now you also ave an option to purchase BlazeTop for the price of 129 Euro only!

    DelphiSpeedUp Delphi/BCB/BDS IDE plugin Version 2.3

    A plugin for Delphi/C++Builder 5/6/7/2005, BDS 2006 and Turbo Delphi/C++/C# Professional. It speeds up the time to load the IDE and it also improves the whole speed of the IDE. This is achieved by replacing some often used RTL functions by FastCode function that are optimized for the used CPU. It also adds some caches for function that work on filenames like ExpandFileName().

    Important information: All these optimizations do not affect the compiled projects in any way. They are made in memory so all the files on disk are not modified. Uninstalling DelphiSpeedUp makes every change undone because the optimizations are not persistent. They only exist in memory and are limited to the Delphi/BCB/BDS process.

    WARNING: Not every access violation in DelphiSpeedUp.dll is a bug in DelphiSpeedUp. Actually many of the exceptions in the RTL package are now thrown in the DelphiSpeedUp.dll because the RTL functions are replaced by the DelphiSpeedUp functions and wrong parameters like nil-pointers, invalid pointers, ... now lead to access violations in the replacement code.

    • Improves Delphi/BCB/BDS's load times
    • Optimizes often used RTL functions by functions form the FastCode project
    • All optimizations are done in memory and do not change any file on disk
    • Adds a "Close all and kill" menu item to the "File" menu that terminates the IDE very fast
    • The fast termination is used when you close the IDE while pressing the CTRL key.
    • Version 2.3 (2007-01-01)
      • Added: Package Import Resolver for many System.pas functions and TList/TObjectList/TInterfaceList
      • Added: Some FastSys tweaks to improve speed in runtime packages
      • Added: .NET's SetThreadPriority(HIGHEST) during IDE loading is now ignored (Delphi 2005, BDS 2006)
      • Added: The IDE is terminated faster by pressing CTRL when closing the main form.
      • Added: DelphiSpeedUp calls BeginUpdate/EndUpdate for BDS's Tool Palette during startup.
    The new DelphiSpeedUp not only improves the speed of the RTL, it also removes the import table calls for some often called compiler magic functions. Another new function of DelphiSpeedUp is that the SetThreadPriority(HIGHEST) call from the .NET framework is ignored. It is now possible to start other applications while the IDE starts without the feeling that something blocks the whole computer. (Why on earth must the .NET framework "steal" CPU time?)

    MySQL Falcon Storage Engine Open Sourced - on /.

    From the Sweet Mother of Databases dept.:The code for the Falcon Storage Engine for MySQL has been released as open source. Jim Starkey, known as the father of Interbase, is behind its creation; previously he was involved with the Firebird SQL database project.

    article on slashdot via

    Firebird 1.5.4 Release Candidate 1

    Pre-release builds of a release candidate for Firebird 1.5.4 are ready for testing.