Subject | Re: [IB-Conversions] Key size too long (from Oracle to Interbase) |
---|---|
Author | Helen Borrie |
Post date | 2000-08-16T15:45:02Z |
Since Interbase always creates indexes for keys, the limit isn't
(pedantically speaking) on the size of the key but on the size of the index.
The maximum index size is 254 bytes. If you are using a multibyte
character set, you must take this into account. The varchar(200) must be
multi-byte character set, otherwise your index would have worked.
Helen
At 03:07 PM 16-08-00 +0000, you wrote:
___________________________________________________
"Ask not what your free, open-source database can do for you,
but what you can do for your free, open-source database."
(J.F.K.)
(pedantically speaking) on the size of the key but on the size of the index.
The maximum index size is 254 bytes. If you are using a multibyte
character set, you must take this into account. The varchar(200) must be
multi-byte character set, otherwise your index would have worked.
Helen
At 03:07 PM 16-08-00 +0000, you wrote:
>Hello,http://www.interbase2000.org
>
>I have a datamodel designed for Oracle 8i and I am migrating it to
>Interbase 6 (running on LinuX/OS -based on RedHat 6.0) ... I have a
>table, for example, that has the following structure:
>
>create table t_UserGroupActionRoleMap (
>iGroupID integer not null references t_UserGroups(iGroupID),
>sRole varchar(200) not null,
>sAction varchar(200) not null,
>dCreationDate timestamp not null,
>iCreationUser integer not null references t_Users(iUserID),
>sCreationIpAddress varchar(50) not null,
>primary key (iGroupID, sRole)
>);
>
>Don't worry about the foreign keys and such... When trying to execute
>this from the ISQL window, I get the following error message:
>
>--- START isql error message
>
>unsuccessful metadata update
>key size too big for index RDB$PRIMARY115
>Statement: create table t_UserGroupActionRoleMap ( iGroupID
>integer not null references t_UserGroups(iGroupID), sRole
> varchar(200) not null, sAction varchar(200)
>not null, dCreationDate timestamp not null, iCreationUser
> integer not null references t_Users(iUserID),
>sCreationIpAddress varchar(50) not null, primary key (iGroupID,
>sRole) )
>
>--- END message from ISQL
>
>Is there a limit on the size of the columns that made part of the
>primary key?
>
>Thanks in advance... ah! and excuse my question but I have looked
>through all the documentation and couldn't find any reference for the
>key size ...
>
>/B
>
>
>
>
>To unsubscribe from this group, send an email to:
>IB-Conversions-unsubscribe@egroups.com
>
___________________________________________________
"Ask not what your free, open-source database can do for you,
but what you can do for your free, open-source database."
(J.F.K.)