Вот перевёл скрипт для базы в формат Firebird-а
На 2-ке база нормально создаётся. На 1.5 не пробывал.
/******************************************************************************/
/*** Generated by IBExpert 2006.10.18 22.10.2006 17:20:15 ***/
/******************************************************************************/
SET SQL DIALECT 3;
SET NAMES UTF8;
CREATE DATABASE 'LOCALHOST:D:\lang\test\TEST2.FDB'
USER 'SYSDBA' PASSWORD 'masterkey'
PAGE_SIZE 16384
DEFAULT CHARACTER SET UTF8;
CREATE GENERATOR GEN_SPOOL_ID;
SET GENERATOR GEN_SPOOL_ID TO 0;
CREATE TABLE "LAST" (
USERNAME VARCHAR(250) NOT NULL,
SECONDS BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
STATE BLOB SUB_TYPE 1 SEGMENT SIZE 80
);
CREATE TABLE ROSTERGROUPS (
USERNAME VARCHAR(250) NOT NULL,
JID VARCHAR(250) NOT NULL,
GRP BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL
);
CREATE TABLE ROSTERUSERS (
USERNAME VARCHAR(250) NOT NULL,
JID VARCHAR(250) NOT NULL,
NICK BLOB SUB_TYPE 1 SEGMENT SIZE 80,
SUBSCRIPTION CHAR(1) NOT NULL,
ASK CHAR(1) NOT NULL,
ASKMESSAGE BLOB SUB_TYPE 1 SEGMENT SIZE 80,
SERVER CHAR(1) NOT NULL,
SUBSCRIBE BLOB SUB_TYPE 1 SEGMENT SIZE 80,
"TYPE" BLOB SUB_TYPE 1 SEGMENT SIZE 80
);
CREATE TABLE SPOOL (
USERNAME VARCHAR(250) NOT NULL,
XML BLOB SUB_TYPE 1 SEGMENT SIZE 80,
SEQ INTEGER
);
CREATE TABLE USERS (
USERNAME VARCHAR(250) NOT NULL,
"PASSWORD" BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL
);
CREATE TABLE VCARD (
USERNAME VARCHAR(250) NOT NULL,
VCARD BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL
);
CREATE TABLE VCARD_SEARCH (
USERNAME VARCHAR(250) NOT NULL,
LUSERNAME VARCHAR(250) NOT NULL,
FN BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LFN VARCHAR(250) NOT NULL,
FAMILY BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LFAMILY VARCHAR(250) NOT NULL,
GIVEN BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LGIVEN VARCHAR(250) NOT NULL,
MIDDLE BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LMIDDLE VARCHAR(250) NOT NULL,
NICKNAME BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LNICKNAME VARCHAR(250) NOT NULL,
BDAY BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LBDAY VARCHAR(250) NOT NULL,
CTRY BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LCTRY VARCHAR(250) NOT NULL,
LOCALITY BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LLOCALITY VARCHAR(250) NOT NULL,
EMAIL BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LEMAIL VARCHAR(250) NOT NULL,
ORGNAME BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LORGNAME VARCHAR(250) NOT NULL,
ORGUNIT BLOB SUB_TYPE 1 SEGMENT SIZE 80 NOT NULL,
LORGUNIT VARCHAR(250) NOT NULL
);
ALTER TABLE ROSTERUSERS ADD CONSTRAINT UNQ_USER_JID UNIQUE (USERNAME, JID);
ALTER TABLE "LAST" ADD PRIMARY KEY (USERNAME);
ALTER TABLE USERS ADD PRIMARY KEY (USERNAME);
ALTER TABLE VCARD ADD PRIMARY KEY (USERNAME);
ALTER TABLE VCARD_SEARCH ADD PRIMARY KEY (LUSERNAME);
CREATE INDEX IDX_USER_JID ON ROSTERGROUPS (USERNAME, JID);
CREATE INDEX IDX_JID ON ROSTERUSERS (JID);
CREATE INDEX IDX_USERNAME ON ROSTERUSERS (USERNAME);
CREATE INDEX IDX_SPOOL_USERNAME ON SPOOL (USERNAME);
CREATE INDEX I_VCARD_SEARCH_LBDAY ON VCARD_SEARCH (LBDAY);
CREATE INDEX I_VCARD_SEARCH_LCTRY ON VCARD_SEARCH (LCTRY);
CREATE INDEX I_VCARD_SEARCH_LEMAIL ON VCARD_SEARCH (LEMAIL);
CREATE INDEX I_VCARD_SEARCH_LFAMILY ON VCARD_SEARCH (LFAMILY);
CREATE INDEX I_VCARD_SEARCH_LFN ON VCARD_SEARCH (LFN);
CREATE INDEX I_VCARD_SEARCH_LGIVEN ON VCARD_SEARCH (LGIVEN);
CREATE INDEX I_VCARD_SEARCH_LLOCALITY ON VCARD_SEARCH (LLOCALITY);
CREATE INDEX I_VCARD_SEARCH_LMIDDLE ON VCARD_SEARCH (LMIDDLE);
CREATE INDEX I_VCARD_SEARCH_LNICKNAME ON VCARD_SEARCH (LNICKNAME);
CREATE INDEX I_VCARD_SEARCH_LORGNAME ON VCARD_SEARCH (LORGNAME);
CREATE INDEX I_VCARD_SEARCH_LORGUNIT ON VCARD_SEARCH (LORGUNIT);
SET TERM ^ ;
CREATE TRIGGER SPOOL_BI FOR SPOOL
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.SEQ IS NULL) THEN
NEW.SEQ = GEN_ID(GEN_SPOOL_ID,1);
END
^
SET TERM ; ^
/* Privileges of users */
GRANT SELECT ON RDB$ROLES TO PUBLIC;