![]() |
Datenbank: Firebird • Version: 2.0 • Zugriff über: IBExpert Personal 2008.05.03
[Firebird] Create Table schlägt fehl wegen UTF8?
Hallo,
ich habe eine neue Datenbank angelegt. Entsprechend der Firebird-Empfehlung will ich sie nicht (mehr) mit UNICODE_FSS, sondern mit UTF8 erstellen. "Create Database" und "Create Domain" klappt, aber "Create Table" scheitert.
SQL-Code:
liefert folgende Fehlermeldung:
CREATE TABLE A_ENTRY (
ID D_ID NOT NULL, PART D_I255, CHANGEDAT D_DATETIME, CHANGEDBY DVUSER, KIND D_CHAR, ACCOUNT_DATE D_DATE, ACCOUNT_YEAR D_JJ, NUMBER D_ID, TEXT DNTEXT50, ACCOUNT_CURRENCY D_CURRENCY, AMOUNT_DEBIT D_CURR, AMOUNT_CREDIT D_CURR, INVOICE_ID D_ID, WORK_ID D_ID ); Zitat:
Hat jemand eine Idee, was da passiert? (IBExpert dürfte nicht "schuld" sein, weil ich es zunächst mit einer 2006-Version versucht hatte und sich nichts geändert hat.) Danke! Jrügen |
Re: [Firebird] Create Table schlägt fehl wegen UTF8?
Moin Jürgen,
gib doch mal soviel SQL Code rüber wie ich brauche, um das hier ausprobieren zu können. |
Re: [Firebird] Create Table schlägt fehl wegen UTF8?
Ich hoffe, es hilft:
SQL-Code:
Der nächste Schritt sollten die Tables sein, beginnend mit der im ersten Beitrag genannten.
SET SQL DIALECT 3;
SET NAMES UTF8; CREATE DATABASE 'F:\VS_NET\Daten\Systemdaten\VS-Adressen.FDB' USER 'XXX' PASSWORD 'YYY' PAGE_SIZE 16384 DEFAULT CHARACTER SET UTF8; /* User Defined Functions */ DECLARE EXTERNAL FUNCTION ABS DOUBLE PRECISION RETURNS DOUBLE PRECISION BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf'; /* usw. 37 Standardfunktionen */ /* Domains */ /* beschränkt auf die für CreateTable vorgesehenen */ CREATE DOMAIN DNTEXT50 AS VARCHAR(50); CREATE DOMAIN DVUSER AS VARCHAR(35) DEFAULT USER NOT NULL; CREATE DOMAIN D_CHAR AS CHAR(1) DEFAULT '' NOT NULL; CREATE DOMAIN D_CURR AS DECIMAL(18,2) DEFAULT 0 NOT NULL; CREATE DOMAIN D_CURRENCY AS CHAR(3) DEFAULT 'EUR' NOT NULL; CREATE DOMAIN D_DATE AS DATE DEFAULT 'NOW' NOT NULL; CREATE DOMAIN D_DATETIME AS TIMESTAMP DEFAULT 'NOW' NOT NULL; CREATE DOMAIN D_I255 AS INTEGER DEFAULT 0 NOT NULL CHECK (VALUE BETWEEN 0 AND 255); CREATE DOMAIN D_ID AS INTEGER DEFAULT 0 NOT NULL; CREATE DOMAIN D_JJ AS SMALLINT DEFAULT 0 NOT NULL CHECK (VALUE BETWEEN 100 AND 9999); /* Generators */ CREATE GENERATOR ACCOUNT_ID; CREATE GENERATOR A_ENTRY_ID; /* usw. insgesamt 31 Generatoren */ Jürgen |
Re: [Firebird] Create Table schlägt fehl wegen UTF8?
Hallo Jürgen,
ich habe dein Script unter Firebird 2.0.1 ausprobiert - sowohl in FlameRobin als auch im SQLHammer läuft es ohne Probleme durch, die DB ist hinterher wie gewünscht erzeugt. Gruß Udo "Kretabiker" Treichel |
Re: [Firebird] Create Table schlägt fehl wegen UTF8?
Hallo Kretabiker,
na, da war ich mal wieder zu langsam. <g> Ich erlaube mir mal, hier in Jürgens Thread meinerseits eine dumme Anfängerfrage zu stellen: Wie kann man in FlameRobin ein script mit "CREATE DATABASE ..." ausführen? Bin ich blind? :gruebel: |
Re: [Firebird] Create Table schlägt fehl wegen UTF8?
Dann liegt es vielleicht doch an der "Personal Version" von IBExpert. Das konnte ich mir zwar nicht vorstellen, aber die Unicode-Unterstützung ist ja eingeschränkt. Ich werde es mal direkt aus einem NET-Programm heraus probieren.
Danke für die Versuche! Jürgen |
Re: [Firebird] Create Table schlägt fehl wegen UTF8?
Hallo bluesbear,
stimmt, du hast recht - in FlameRobin habe ich die Datenbank vorher von Hand anlegen müssen und habe dann nur die Skripte für die Domains und die Tabelle ausführen lassen (was funktioniert hat)... Mea culpa, hätte ich natürlich dazu schreiben müssen. SQLHammer hat das gesamte Script verarbeitet. Gruß Udo "Kretabiker" Treichel |
Re: [Firebird] Create Table schlägt fehl wegen UTF8?
Hallo Kretabiker,
ahh, ok, ich dachte schon, ich hätte wieder was verpennt. :stupid: So hat das hier übrigens auch geklappt (Firebird 2.1) - wuppdi (<- was ist das eigentlich <g>) war die Tabelle da. |
Re: [Firebird] Create Table schlägt fehl wegen UTF8?
Zitat:
Das hat aber mit dem Script nichts zu tun und wie schon auf firebirdexperts.com beschrieben funktionierte das script ohne Einschränkung. |
Re: [Firebird] Create Table schlägt fehl wegen UTF8?
Ich bitte bei allen Beteiligten (vor allem natürlich bei IBExpert = Holger Klemt) um Entschuldigung für den Fehlalarm: Entgegen meiner Annahme, dass ich immer mit der aktuellen Version arbeiten würde, hatte ich noch FB 2.0 RC 4 im Einsatz. Ich habe jetzt das Update auf 2.1.0.17798 installiert, und alles funktioniert wie gewünscht. Jürgen
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz