Subject Re: [firebird-support] Newbie: A few questions...
Author Helen Borrie
At 08:59 AM 6/08/2004 +0000, you wrote:
>Hi All,
>Just beginning to work with FireBird. So far looks really cool. Some
>questions I have run into, which you guys and gals may be able to
>help me out with:
>1. Can you rename a table with SQL syntax in FireBird?
>(Obviously, one can create a new table, copy data across, and then
>drop the old table, but is there a 'Alter table RENAME oldtablename
>to newtablename'?)

No. Firebird is an organism with relationships and dependencies, including
those in triggers and stored procedures. So the question is a bit like
asking "Can human arteries be replaced with string?"

>2. Does FireBird support Multi-component keys with mixed sort orders?
>For example 1 key, 2 fields, 1 ascending, and 1 descending?

Be aware of the distinction between keys and indexes. Keys implement
relationships (and sort order, a cardinal attribute, doesn't affect
relationships), while indexes can facilitate searches and orderings.

Firebird supports multi-column keys AND multi-column indexes. Be aware
that there are tight limits on the total width of indexes, which get
tighter with special collations in international character sets....and
multi-columnness in index eats some of the available bytes.

>3. What is the maximum key size in FireBird, and is it affected by
>the Database Page Size?

252 or 253 bytes or [much] less, depending on character set, collation
order and how many actual key elements an index has.

The maximum key size is not affected by db page size but the efficiency of
indexes can be. The smaller the page size, the greater the level of
indirection required for storing index images as tables grow.