Martti Laine Martti Laine - 7 months ago 40
PHP Question

PHP: Get primary key of table?

Is there a way to get the name of primary key field from mysql-database? For example:

I have a table like this:

+----+------+
| id | name |
+----+------+
| 1 | Foo1 |
| 2 | Foo2 |
| 3 | Foo3 |
+----+------+


Where the field id is primary key (it has auto increment but I can't use that). How can I retrieve fields name "id" in php?

Answer

A better way is to use SHOW KEYS since you don't always have access to information_schema. The following works:

SHOW KEYS FROM table WHERE Key_name = 'PRIMARY'

Column_name will contain the name of the primary key.