Announcement

Collapse
No announcement yet.

Warum funktioniert das Script nicht?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Warum funktioniert das Script nicht?

    Hallo,

    weiss jemand warum das nicht funktioniert:

    ==========================================

    SET NAMES ISO8859_1;

    CREATE DATABASE 'c:\temp\Adressen.gdb' PAGE_SIZE 4096;

    User "USER1" Password "user1";

    DEFAULT CHARACTER SET ISO8859_1;

    CREATE DOMAIN "TSTR25" AS VARCHAR(25) COLLATE DE_DE;

    CREATE DOMAIN "TSTR30" AS VARCHAR(30) COLLATE DE_DE;

    CREATE DOMAIN "TPLZ" AS CHAR(5);

    CREATE TABLE "ADRESSE"

    (

    "ID" INTEGER NOT NULL,

    "NAME" TSTR25,

    "VORNAME" TSTR25,

    "STRASSE" TSTR30,

    "PLZ" TPLZ,

    "ORT" TSTR30,

    "EMAIL" TSTR30,

    CONSTRAINT "PK_ADRESSE" PRIMARY KEY ("ID")

    );

    CREATE GENERATOR "GEN_ADRESSE";

    ==========================================

    Ich benutze den Interbaseserver WI-V6.0.1.0 und die IBConsole 1.0.1.344.

    Wenn ich das Script starte, folgt die Meldung:

    "Parsing Error Invalid statement on line 2: SET NAMES ISO8859_1"

    Und dann:

    "invalid database handle (no active connection)"

    Gruss Matthias Dames


  • #2
    set names sollte gehen, aber das Create Statement ist falsch:

    CREATE DATABASE 'c:\temp\Adressen.gdb' PAGE_SIZE 4096
    User "USER1" Password "user1"
    DEFAULT CHARACTER SET ISO8859_1;

    wäre wohl besse

    Comment


    • #3
      Hallo,

      Danke für die Antwort. Aber die Fehlermeldung bleibt. Das Script habe ich von http://www.delphi-treff.de/content/tutorials/ibkurs/index.php4?kat=4.

      Laut dem Interbase-Kurs dort müssen vorher zwei Einstellungen unter > Edit > Options vorgenommen werden:

      Character Set = ISO8859_1 und SQL-Dialect = 3

      Character Set = ISO8859_1 habe ich so eingestellt. Wo man SQL-Dialect = 3 einstellt habe ich nicht gefunden.

      Gibt es noch mehr zu beachten

      Comment


      • #4
        Du kannst Character Set und Dialect auch unter OIptionen in der Console einstelle, soweit ich mich erinnere

        Comment


        • #5
          Ja, Character Set habe ich in Interactive SQL / Edit / Options... eingestellt. Den Dialect (nach langer Suche) mit der rechten Maustaste auf der Statusleiste unten :-)<BR>
          Die DB lässt sich aber nur anlegen, wenn ich alles mit Character Set und COLLATE DE_DE weglasse. Also so:<BR>
          ================================================== ===============<BR> CREATE DATABASE 'c:\temp\Adressen.gdb' PAGE_SIZE 4096 User "USER1" Password "user1";<BR>
          CREATE DOMAIN "TSTR25" AS VARCHAR(25);<BR>
          CREATE DOMAIN "TSTR30" AS VARCHAR(30);<BR>
          CREATE DOMAIN "TPLZ" AS CHAR(5);<BR>
          CREATE TABLE "ADRESSE"<BR>
          (<BR>
          "ID" INTEGER NOT NULL,<BR>
          "NAME" TSTR25,<BR>
          "VORNAME" TSTR25,<BR>
          "STRASSE" TSTR30,<BR>
          "PLZ" TPLZ,<BR>
          "ORT" TSTR30,<BR>
          "EMAIL" TSTR30,<BR>
          CONSTRAINT "PK_ADRESSE" PRIMARY KEY ("ID")<BR>
          );<BR>
          CREATE GENERATOR "GEN_ADRESSE";<BR>
          ================================================== ===============<BR>
          Aber so ganz richtig ist das auch nicht. Oder?<BR>
          <BR&gt

          Comment


          • #6
            Na ja die Console,

            derzeit gibt es eine kostenlose Version des IBExpert, scheint ganz gut so sein.

            >CREATE DATABASE 'c:\temp\Adressen.gdb' PAGE_SIZE 4096 User "USER1" Password "user1";

            Mache mal besser ein.

            >CREATE DATABASE 'c:\temp\Adressen.gdb' PAGE_SIZE 4096 DEFAULT CHARCHTER SET ISO8859_1 User "USER1" Password "user1";

            Und versuche dann den Connect mit deinem Chacracterset in den Options nachdem Du die DB angelegt has

            Comment


            • #7
              Auch so funktioniert das nicht. Die Installation vom Interbaseserver muss aber ok sein, denn über Database > Create Database... kann ich ohne Probleme Datenbanken anlegen (Page Size = 4096 / Default Character Set = ISO8859_1 / SQL Dialect = 3).

              Irgendwie scheint das Interactive SQL der IBConsole oder das Script nicht zu funktionieren.
              <BR&gt

              Comment


              • #8
                Hi Matthias,

                CREATE DATABASE 'C:\temp\Adressen.gdb' PAGE_SIZE 4096
                User 'USER' Password 'pwd' DEFAULT CHARACTER SET ISO8859_1

                Mit dem Statement funzt bei mir alles einwandfrei (IBConsole 1.0.1.344). Es ist sinnvoll, nicht das gesamte Script auf einmal ablaufen zu lassen. Erzeuge zuerst die DB und lass anschließend den Rest laufen....

                Grüße
                Wolfgan

                Comment


                • #9
                  Gibt es deinen user1? Darf der das? Hast Du es schon mit SYSDBA versucht

                  Comment


                  • #10
                    hallo andreas und wolfgang,<BR>
                    ja, einen USER1 gibt es. der fehler lag wohl an denn anführungszeichen beim user und passwort. wolfgang hat da einfache anführungszeichen gesetzt und ich doppelte. jetzt funktioniert folgendes mit einem script:<BR>
                    CREATE DATABASE 'c:\temp\Adressen.gdb' PAGE_SIZE 4096 User 'USER1' Password 'user1' DEFAULT CHARACTER SET ISO8859_1;<BR>
                    CREATE DOMAIN "TSTR25" AS VARCHAR(25) COLLATE DE_DE;<BR>
                    CREATE DOMAIN "TSTR30" AS VARCHAR(30) COLLATE DE_DE;<BR>
                    CREATE DOMAIN "TPLZ" AS CHAR(5);<BR>
                    CREATE TABLE "ADRESSE"<BR>
                    (<BR>
                    "ID" INTEGER NOT NULL,<BR>
                    "NAME" TSTR25,<BR>
                    "VORNAME" TSTR25,<BR>
                    "STRASSE" TSTR30,<BR>
                    "PLZ" TPLZ,<BR>
                    "ORT" TSTR30,<BR>
                    "EMAIL" TSTR30,<BR>
                    CONSTRAINT "PK_ADRESSE" PRIMARY KEY ("ID")<BR>
                    );<BR>
                    CREATE GENERATOR "GEN_ADRESSE";<BR>

                    Nur das SET NAMES ISO8859_1 habe ich jetzt weggelassen. wahrscheinlich ist es gar nicht notwendig :-)

                    danke nochmal für eure antworten.

                    gruss matthias<BR&gt

                    Comment

                    Working...
                    X