mysql - 有谁可以隐藏mysql中的引用吗?

标签 mysql database foreign-keys foreign-key-relationship

我想查看以前创建的表的引用表。

我有什么:

我在数据库trackcar中有一个表zone_inout_log。它包含各个领域。我想查看该表中使用的所有外键的引用。我不知道引用的表。我所拥有的只是使用外键的表 zone_inout_log ,这些列是外键 user_iddevice_idarea_id等等

我想要什么

我想查看所有引用的表,例如我从哪个表获取user_id和device_idarea_id`等。

我尝试过的:

 show table status from trackcar;

也尝试过

show create table zone_inout_log;


| zone_inout_log | CREATE TABLE `zone_inout_log` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
  `user_id` int(11) DEFAULT NULL,
  `device_id` int(11) NOT NULL,
  `area_id` int(11) NOT NULL,
  `lat` float(10,6) DEFAULT NULL,
  `lng` float(10,6) DEFAULT NULL,
  `date_time` datetime DEFAULT NULL,
  `inout_status` varchar(45) DEFAULT NULL,
 PRIMARY KEY (`id`),
 KEY `user_id` (`user_id`),
  KEY `device_id` (`device_id`),
  KEY `area_id` (`area_id`),
  KEY `lat` (`lat`),
  KEY `lng` (`lng`),
  KEY `date_time` (`date_time`),
  KEY `inout_status` (`inout_status`)
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1 |

但没有获取引用的表名。如果有人可以提出建议吗?

最佳答案

请检查一下-

SELECT constraint_schema, 
table_name, 
column_name, constraint_name, 
referenced_table_schema, 
referenced_table_name, 
referenced_column_name  
FROM information_schema.KEY_COLUMN_USAGE 
WHERE referenced_table_schema ='your_db' 
AND referenced_table_name ='your_table';

关于mysql - 有谁可以隐藏mysql中的引用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33233586/

相关文章:

database - 在 MS Access 中,是否可以执行多个查询?

database - 我可以在 Access 中编辑自动编号列吗?

sql - 更新 MySQL 中的关联表

postgresql - 为什么我的 Postgres DELETE 删除零行,当存在一个行时?

python - SQLAlchemy 使用复合外键连接(使用flask-sqlalchemy)

mysql - 为什么 SQL 最终将 NULL 值视为 FALSE?

mysql - 在 MYSQL 的单个列中仅存储月份和日期

php - 比较数据库不同行之间的值并获得最大计数

php - 如何在 MySQL 和 PHP 中处理日期和时间?

android - 在 Android 应用程序中,如何显示与另一个表中的信息关联的表中的信息?