热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在MySQL中获取特定表的主键“列名”

如何解决《如何在MySQL中获取特定表的主键“列名”》经验,为你挑选了1个好方法。

我们的系统会为每个用新内容更新或插入的表创建一个日志,它将保存表名称,更新行的ID值或最后插入的ID以及事件的时间戳。

这很有用,因为我们可以检查最新的表是什么,并在发生更改后立即刷新显示给用户的信息,但是我们没有在日志中保存ID的列名。

问题是我们正在用PHP逐案编程。

if($tableName == 'Clients'){ $idname = 'CID'; }

有没有办法问MySQL:给我一个特定表的主键列名称,例如:

SHOW COLUMN_NAME FROM CLEINTS WHERE KEY_NAME = 'PRIMARY KEY';

我记得我过去曾经使用过这样的查询,但是我不记得它是什么,我已经找到了一些SQL解决方案,但似乎无法在MySQL中工作或过于复杂(使用information_schema),该查询我要寻找的非常简单,几乎就像我刚才给出的示例一样。

谢谢



1> 小智..:

您可以从information_schema数据库中获取详细信息。使用以下查询:

SELECT COLUMN_NAME 
FROM information_schema.KEY_COLUMN_USAGE 
WHERE TABLE_NAME = 'Your_table_name' 
  AND CONSTRAINT_NAME = 'PRIMARY'


推荐阅读
author-avatar
覃维欢
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有