Wie man Primärschlüssel der Tabelle?
Gibt es einen Weg, um den Namen der primary key-Feld aus einer mysql-Datenbank? Zum Beispiel:
Ich habe eine Tabelle wie diese:
+----+------+
| id | name |
+----+------+
| 1 | Foo1 |
| 2 | Foo2 |
| 3 | Foo3 |
+----+------+
Denen das Feld id ist primary key (es ist auto increment-aber ich kann nicht zu verwenden). Wie kann ich abrufen Felder namens "id" in php?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eine bessere Möglichkeit ist die Verwendung
SHOW KEYS
da Sie nicht immer Zugriff auf information_schema. Die folgenden Werke:Column_name angegebene Spalte enthält den Namen des primary key.
column_name
Schlüssel?cut
wenn Sie möchten, um nur den Namen der Spalte: ` | cut -f5`Hier ist die Primäre Schlüsselspalte Namen
PRIMARY
Wie über dieses.
db
durch Ihre TABLE_SCHEMA...? Ich verstehe nicht, warum du +1 auf diese...verwenden:
Wenn Sie möchten, um die Liste zu generieren Primärschlüssel dynamisch über php in einem Rutsch, ohne dass durch jede Tabelle, die Sie verwenden können,
obwohl Sie tun müssen, um Zugang zu den Informationen.schema, um dies zu tun.
Für ein PHP-Ansatz, die Sie verwenden können, mysql_field_flags
Kürzest möglichen code zu sein scheint, so etwas wie
Habe ich es endlich!
Ich verwenden Sie SHOW INDEX FROM Tabelle ; es gibt mir eine Menge Informationen ; wenn der Schlüssel eindeutig ist, seine sequenece in den index, die Sortierung, sub-Teil, wenn es null ist, seinen Typ und Kommentar, wenn vorhanden, siehe Abbildung hier
MySQL ist eine SQL-Abfrage "SHOW INDEX FROM" die Renditen der Indizes aus einer Tabelle.
Für zB. - die folgende Abfrage zeigt alle Indizes für die Tabelle "products": -
Es gibt eine Tabelle mit Typ, column_name, Key_name, etc. und zeigt Ausgabe mit allen Indizes und Primärschlüssel -
Nur Anzeige Primärschlüssel aus der Tabelle verwenden :-
Wenn Sie auf räumliche Tabellen in Ihrer Datenbank verwenden:
Sollten Sie die Verwendung von PRIMÄREN
key_column_usage.constraint_name = "PRIMARY"
Probe Abfrage,