Announcement

Collapse
No announcement yet.

Generatoren / InterBase

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

  • Generatoren / InterBase

    Ist es möglich per SQL den aktuellen Wert eines bestimmten Generators abzufragen? Wenn ja, wie bewerkstellige ich dies?

  • #2
    Hallo Christian,

    angenommen Du hast einen Generator "adressen_id", dann ermittelst Du den aktuellen Stand mit

    <b>select gen_id(adressen_id,0) from rdb$database</b>

    Die Tabelle <b>rdb$database</b> sollte verwendet werden, weil es in dieser Tabelle garantiert nur einen Datensatz gibt.

    Tschüß

    Torste

    Comment


    • #3
      Hallo,

      wenn die <b>IBX</b>-Komponenten (InterBase Express) von Delphi 5 verwendet werden, kann man den Generatorwert von IBX automatisch ermitteln lassen. IBX registriert dafür einen eigenen Eigenschafts-Editor, der über den Objektinspektor (GeneratorField) aufgerufen wird:
      <pre>
      ...
      GeneratorField.Field = 'REDAKTEURID'
      GeneratorField.Generator = 'GEN_REDAKTEURID'
      ...
      </pre>
      Mit IBX ist es also nicht mehr notwendig, sich selbst den aktuellen Generatorwert zu beschaffen, das macht nun IBX automatisch im Hintergrund

      Comment


      • #4
        Hallo Herr Kosch,
        ich arbeite mit den IBX-Komponenten.
        wie kann ich denn GeneratorField.Field aufrufen

        Comment


        • #5
          Hallo,

          wenn es den Generator bereits in der InterBase-Datenbank gibt, wird alles über den Objektinspektor konfiguriert: <br>
          1. TIBDataSet-Instanz im Objektinspektor auswählen <br>
          2. Im Objektinspektor bei der Eigenschaft <b>GeneratorField</b> den Dialog <i>GeneratorField</i> über den Button <b>...</b> aufrufen. <br>
          3. Im Dialog <i>GeneratorField</i> den Generator aus der Liste der vorhandenen Generatoren dieser Datenbank auswählen <br>
          4. Im Dialog <i>GeneratorField</i> das Feld der Tabelle aus der Liste auswählen, für das der neue Generatorwert verwendet werden soll <br>
          5. Im Dialog <i>GeneratorField</i> den Radiobutton auf den Eintrag <i>Ereignis auslösen: Bei neuem Satz</i> schalten <br>
          6. Fertig! Ab nun fordert IBX hinter den Kulissen immer dann automatisch den neuen Generatorwert an, wenn ein neuer Datensatzpuffer angefordert wird.

          P.S Wenn die Eigenschaft GeneratorField nicht im Objektinspektor angezeigt wird bzw. der Aufruf des Dialog über den Button <b>...</b> nicht erfolgreich ist, sollte die IBX-Version <b>4.52</b> installiert werden (ist in der CodeCentral-Datenbank auf der Community-Webseite von Borland zu finden).
          &#10

          Comment

          Working...
          X