3

我正在 PHP 中创建一个类,其中我只有表名的参数并获取所有列和值。但我不知道如何获取带有外键的列的值。
那是因为我不知道与哪个表相关。

我需要一种可以从已知表中使用 PHP 或 SQL 获取外键的方法吗?

4

2 回答 2

5

在 MySql 中,您可以查询information_schema以获取有关数据库的元信息。

SELECT
  TABLE_NAME AS `table_name`,
  COLUMN_NAME AS `column_name`,
  REFERENCED_COLUMN_NAME AS `referenced_column_name`,
  REFERENCED_TABLE_NAME AS `referenced_table_name`
FROM information_schema.KEY_COLUMN_USAGE
WHERE TABLE_SCHEMA = DATABASE()
  AND REFERENCED_TABLE_SCHEMA = DATABASE()

来自:https ://github.com/troelskn/pdoext/blob/master/lib/pdoext/connection.inc.php#L413 (具体loadKeys功能)

于 2012-04-18T11:53:24.613 回答
1

您可以使用 MySQL 命令:

SHOW CREATE TABLE mytable
于 2012-04-18T11:54:17.850 回答