查看外键名称查看数据库外键名字

2023-05-05 19:26:50 浏览数 (1)

我们要进行删除外键时,需要知道外键的名字,那么如何查看数据库外键呢?有2种方式查看: 1.过查看表的方式查看外键名字; 2.通过mysql自带的系统表查看外键。

先来看一下创建外键的方式:

创建外键的方式

更多精彩请访问本文源地址: https://blog.csdn.net/zixiao217

方式一: 在创建表的时候同时指定外键名字

代码语言:javascript复制
create database fundb;
USE fundb;
-- 创建用户表
CREATE TABLE `t_user` (
  `uid` int(11) PRIMARY KEY AUTO_INCREMENT,
  `uname` varchar(40) DEFAULT NULL,
  `age` int(11) DEFAULT NULL
) ;
-- 创建数学成绩表
CREATE TABLE `t_score_math` (
  `uid` int(40) DEFAULT NULL,
  `score` double DEFAULT NULL,
  CONSTRAINT `f_uk` FOREIGN KEY (`uid`) REFERENCES `t_user` (`uid`)
) ;

方式二:在建表后,对表修改进行添加外键

代码语言:javascript复制
create database fundb;
USE fundb;
-- 创建用户表
CREATE TABLE `t_user` (
  `uid` int(11) PRIMARY KEY AUTO_INCREMENT,
  `uname` varchar(40) DEFAULT NULL,
  `age` int(11) DEFAULT NULL
) ;
-- 创建数学成绩表
CREATE TABLE `t_score_math` (
  `uid` int(40) DEFAULT NULL,
  `score` double DEFAULT NULL
) ;


-- 对表添加外键  指定外键名字: f_mykey
alter table t_score_math add 
constraint f_mykey   -- 该行省略的话,则会自动添加一个名字
foreign key (uid) references t_user(uid);

查看外键名字的方式

方式一:通过查看表的方式查看外键名字

代码语言:javascript复制
SHOW CREATE TABLE `t_score_math`;

得到以下结果:

Table

Create Table

t_score_math

建表语句

建表语句内容如下:

代码语言:javascript复制
CREATE TABLE `t_score_math` (
  `uid` int(40) DEFAULT NULL,
  `score` double DEFAULT NULL,
  KEY `f_mykey` (`uid`),
  CONSTRAINT `f_mykey` FOREIGN KEY (`uid`) REFERENCES `t_user` (`uid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

可以得到外键的名字: f_mykey;

方式二:通过mysql自带的系统表查看外键

代码语言:javascript复制
SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE  WHERE constraint_schema = 'fundb'  AND table_name = 't_score_math';

结果如下,也可以查看到外键的名字:

0 人点赞