[SQL allgemein] Tag für Primarxy Key?

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

  • [SQL allgemein] Tag für Primarxy Key?

    Hallo,

    ich versuche eine abfrage für mehrere Tabellen zu realisieren. da bei jeder tabelle der primary key anders benannt ist wäre es super wenn es einen ersatz tag geben würde a la:

    SELECT * FROM tabelle WHERE PRIMARY_KEY_TAG = 1;

    gibt es denn sowas?

    leider hat alles googlen nicht gebracht.

    vielen dank

    mfg
    Daniel

  • #2
    SHOW INDEX FROM table WHERE Key_Name = 'PRIMARY'

    Wieso möchtest du denn so eine Abfrage stellen? Ich meine was willst du denn Anzeigen oder Berechnen, wenn du vorher gar nicht weißt, welche Spalte der PK ist, von welchem Typ und ob es einen Datensatz mit 1 in dieser Spalte gibt?

    Comment


    • #3
      vielen dank für deine antwort...

      wie kommt man mit SHOW an einen wert? mich interessiert ja nur der column_name...

      ich brauche informationen aus verschiedenen tabellen von denen ich nur den tabellennamen und eine id weiß... so funktioniert es zwar aber so richtig "schön" find ich das noch nicht...

      mit diesem query bekomme ich die primary key spalte:
      SELECT
      temp.COLUMN_NAME
      FROM
      INFORMATION_SCHEMA.TABLE_CONSTRAINTS pk,
      INFORMATION_SCHEMA.KEY_COLUMN_USAGE temp
      WHERE
      pk.TABLE_NAME = '".$source_table."' AND
      CONSTRAINT_TYPE = 'PRIMARY KEY' AND
      temp.TABLE_NAME = pk.TABLE_NAME AND
      temp.CONSTRAINT_NAME = pk.CONSTRAINT_NAME

      Comment


      • #4
        Entschuldige, ich habe mich vertan. Dir hilft eher
        DESCRIBE table
        was aber kein WHERE verträgt. Mußt du durch die Zeilen iterieren und auf $row['Key'] == 'PRI' prüfen.

        Comment


        • #5
          (a) $sql=SHOW COLUMNS (b) die query liefert ein Result Set mit etwa 7 Feldern pro Column. Eines davon ist der Indextyp, eines der Column Name. Die Beschreibung der Felder ist unter DESCRIBE. Ich müsste mein Testskript anwerfen um die genauen Details des result sets wiederzugeben.

          Comment

          Working...
          X