Announcement

Collapse
No announcement yet.

Paradox Feld an bestimmter Stelle per einfügen

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

  • Paradox Feld an bestimmter Stelle per einfügen

    <pre>
    Hallo,
    ich möchte gerne eine Paradoxtabelle dynamisch zur Laufzeit verwalten.
    Sprich, es soll u.a. möglich sein:
    ... ein Feld anzulegen -> bereits gelöst per Alter Table
    Nun möchte ich aber die Spallte bestimmen in der das neue Feld eingefügt wird.
    <br>
    In der Hilfe zu Local SQL ist zu Alter Tabel folgendes zu finden
    <I>"Fügt einer bestehenden Tabelle Spalten hinzu und löscht Spalten aus ihr.
    <B>ALTER TABLE</B> table_reference DROP <B>[COLUMN]</B> column_reference | ADD <B>[COLUMN]</B> column_reference [,reference DROP <B>[COLUMN]</B> column_reference | ADD <B>[COLUMN]</B> column_reference...]"</I>
    <BR>
    Jetzt muss ich zugeben das ich mit der Syntax dieser Beschreibung meine Schwierigkeiten habe !Ähh...!
    <br>
    OK: table_reference ist die Angabe der Zieltabelle
    z.B.: "meineTabelle.dB" der Tabellenname
    OK: column_reference bedeutet sowas wie die Beschreibung der Spalte
    (hier ein Feld) z.B.: "Feld_ID" der Fedname
    OK: ADD - Feld hinzufügen
    OK: Drop - Feld entfernen
    OK: [] bedeutet was dazwischen steht "kann muss aber nicht angegeben werden"
    ?????: COLUMN ... der Index der Feldes und somit die Spalte
    <br>
    Ich habe es mit folgen SQL versucht habe aber damit kein Glück gehabt:
    <b>'ALTER TABLE "meineTabelle.dB" ADD 0 "meineTabelle.dB"."Feld_ID" INTEGER'
    <br>
    Ungültiges Schlüsselwort
    Symbol-String: 0
    Zeilennummer: 1</b>
    <br>
    Meiner Meinung nach hätte das Feld am Anfang der Tabelle eingefügt werden müssen<br>
    Gruss Stefan
    <br>
    PS.:
    Bin auch an Kommentaren ohne Lösung interessiert
    </pre>

  • #2
    Hallo Stefan,

    auf die physische Stelle hast du beim Anlegen eines Feldes keinen Einfluss - warum auch, jedes Feld hat ja einen eindeutigen Namen und im Select hast du die Kontrolle auf die Anzeigereihenfolge. Also z.B. zum Anlegen eines neuen Feldes:<br>
    <b>ALTER TABLE "meineTabelle.db" ADD COLUMN "FELD_ID" INTEGER</b>
    und zum Löschen eines Feldes:<br>
    <b>ALTER TABLE "meineTabelle.db" DROP COLUMN "Feld_Old"</b>

    Gruß Fal
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment


    • #3
      <pre>
      Hallo Falk,
      [Column] ist also nur ein erweitertes Sprachelement um deutlich zu
      machen das es sich um eine Spalte handelt.
      <br>
      Nun zu Deiner Frage:
      Ich brauche die Spalte nicht irgendwo, sondern genau genommen an erster Stelle in der Tabelle.
      Da ich im weiteren Verlauf einen Primärindex anlegen mus. und der fordert ja die Indizierten Felder am anfang einer Tabelle.
      <br>
      Secundärindezes fordern wierderum einen Primärindex ...
      <br>
      Gruß Stefan
      </pre&gt

      Comment


      • #4
        Hallo Stefan,

        dann ist das aber eine Eigenheit von Paradox und Local-SQL, denn normalerweise kannst du mit <b>ALTER TABLE "meineTabelle.db" ADD CONSTRAINT "meinPrimaryIndex" PRIMARY KEY ("FELD_ID")</b> für jedes Feld einer Tabelle einen Primärschlüssel anlegen (solange es nicht schon einen Primärschlüssel gibt).

        Gruß Fal
        Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

        Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

        Comment


        • #5
          Hallo Falk,<br>
          <br>
          das werde ich sofort mal auspropieren. Den Ausdruck "CONSTRAINT ..."
          kenne ich nicht. Hast Du eine bessere Info Quelle als die Borland
          Local-SQL Hilfe ;-)
          <br>
          Gruß Stefa

          Comment


          • #6
            ...die Oracle8 SQL Reference ;-
            Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

            Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

            Comment


            • #7
              Hi ;-) Buch oder Help-File
              <br>
              bekomme übrigens die Meldung CONSTRAINT ist ein ungültiges Schlüsselwort
              <br>
              Ähm... für Create Table gibt es aber einen Hinweis in der Local-SQL-Hilfe.
              <br>
              Gruß Stefan

              &#10

              Comment


              • #8
                Das Oracle SQL ist wohl ein wenig mächtiger, als das was Paradox sprich die BDE so kann. Daher würde ich für Paradox nur das angesprochene HelpFile beachten. Auch wenn das SQL dann ein wenig eng wird.

                Paradox ist halt keine SQL Datenbank, sondern ein indexsequentielles Dateisystem

                Comment

                Working...
                X