精华内容
下载资源
问答
  • 查看外键名称查看数据库外键名字

    千次阅读 2019-10-29 12:46:35
    我们要进行删除外键时,需要知道外键的名字,那么如何查看数据库外键呢?有2种方式查看: 1.过查看表的方式查看外键名字; 2.通过mysql自带的系统表查看外键。 更多精彩请访问本文源地址: ...

    我们要进行删除外键时,需要知道外键的名字,那么如何查看数据库外键呢?有2种方式查看: 1.过查看表的方式查看外键名字; 2.通过mysql自带的系统表查看外键。
    更多精彩请访问本文源地址: https://blog.csdn.net/zixiao217

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

    创建外键的方式

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

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

    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`)
    ) ;
    
    

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

    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);
    

    查看外键名字的方式

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

    SHOW CREATE TABLE `t_score_math`;
    

    得到以下结果:

    TableCreate Table
    t_score_math建表语句

    建表语句内容如下:

    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自带的系统表查看外键

    SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE  WHERE constraint_schema = 'fundb'  AND table_name = 't_score_math';
    

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

    在这里插入图片描述

    展开全文
  • 根据外键名称获取外键表名 Oracle数据库删除某张表里的数据时,有时由于有外键约束,外键表里有数据,主表...select * from dba_constraints where constraint_name=‘xxx外键名’ and constraint_type = ‘R’; ...

    根据外键名称获取外键表名
    Oracle数据库删除某张表里的数据时,有时由于有外键约束,外键表里有数据,主表数据删除不了,而外键命名不规范,难找外键表。

    这时可以根据外键名称查询外键表:

    select * from dba_constraints where constraint_name=‘xxx外键名’ and constraint_type = ‘R’;

    展开全文
  • 在写实验报告时我发现不会在窗口查找外键关系,点外键找不到他的关系。 如图点击,可以看见创建外键的代码 ...//course表,FK_course_Teacher外键约束,CTno引用外键约束外键表Teacher //向co

    在写实验报告时我发现不会在窗口查找外键关系,点外键找不到他的关系。
    在这里插入图片描述
    如图点击,可以看见创建外键的代码

    USE [SM]
    GO
    
    ALTER TABLE [dbo].[course]  WITH CHECK ADD  CONSTRAINT [FK_course_Teacher] FOREIGN KEY([CTno])
    REFERENCES [dbo].[Teacher] ([Tno])
    //course表,FK_course_Teacher外键约束名,CTno引用外键约束名,外键表Teacher
    //向course表添加名为FK_course_Teacher的外键CTno,外键从teacher表中的tno来的
    GO
    
    ALTER TABLE [dbo].[course] CHECK CONSTRAINT [FK_course_Teacher]
    GO
    
    

    语法:alter table 表名 add constraint 外键约束名 foreign key(列名) references 引用外键表(列名)
    在这里插入图片描述
    在这里插入图片描述
    TNO和CTNO是一回事只不过在两个表为了方便区分起了不一样的名字,也可以同名,但是要表来引用

    展开全文
  • 数据库外键

    2016-04-06 15:53:00
    外键 创建: 方式1:在创建表时使用foreign key(字段名) references 表名(主键); 方式2:通过修改表结构add foreign key(字段名) ...如果查看外键名:show create table 表名; 外键的约束: B表中的某一个字段...

    外键

    创建:

    方式1:在创建表时使用foreign key(字段名) references 表名(主键);

    方式2:通过修改表结构add foreign key(字段名) references 表名(主键);

    删除:

    alter table 表名 drop foreign key 外键名;

    如果查看外键名:show create table 表名;

    外键的约束:

    B表中的某一个字段是A表的主键字段。

    A表为主表,B表为从表:

    主表被从表约束。

    1、A表本身不能随意 被删除

    2、A表中的记录的变动,不能随意删除或更新数据,言外之意有一定的约束

    置空约束

        当主表的记录删除时,那么从表中的记录中的外键字段调用为null

    语法:

        on delete set null

    级联约束

        当主表的记录更新时,那么从表中的记录中的外键字段同步更新。

     

    从表被主表约束

    1、从表的数据:从表中的外键字段的值,必须是,主表中的主键字段中的某一个值。

    转载于:https://www.cnblogs.com/nyxd/p/5359679.html

    展开全文
  • MySQL撤销外键约束

    2020-03-10 23:38:49
    ????...如何查看外键名呢? 通过show create table 表名;查看外键名 单引号内为外键名/外键所在列名 因此我的撤销外键语句应写为: alter table employees drop foreign key employees_ibfk_1...
  • 删除数据库的外键

    千次阅读 2019-04-09 09:43:05
    注意: 删除外键的表名是添加外键的 ... 也可以使用命令:SHOW CREATE TABLE 表名,用来查看外键名; 如果删除的字段选用添加外键时的那个外键名,那么会报错,告诉这个外键不存在; ​​​​​​​如果...
  • --从创建外键的表,获取外键名、字段,关联的主键表、主键名、字段(首字段) SELECTfc.constrnamefk_name,ft.tabnamefk_tabname,fcol.colnamefk_colname,pc.constrnamepk_name,pt.tabnamept_tabname,pcol.colname ...
  • --SQL SERVER 2000中各表外键名,主键名的获取SELECT 外键表ID = b.fkeyid , 外键表名称 = object_name(b.fkeyid) , 外键列ID = b.fkey , 外键列名 = (SELECT name FROM syscolumns WHERE colid = b.fkey AND ...
  • DB2、Oracle、SqlServer、Mysql四种数据库中,查看表的外键信息,以及外键关联的表及表字段的语句。 输出的格式一样,所以之截图了一个, 有多个外键会返回所有的外键值。 Oralce : select c.table_name,c....
  • 外键

    千次阅读 2018-07-08 21:05:12
    一对一关系模型中,建立外键fk为外键名,wife为从表,hashband为主表,使用从表的主键作为外键列名实现了一对一的关系,即从表的主键就是外键在多对多关系中,用第三张表来建立另外两张表的关系来实现多对多。...
  • select 字段序号,字段,max(外键字段所在的表) as 外键字段所在的表,max(外键字段) as 外键字段,类型 from (SELECT distinct 字段序号=a.colorder , 字段=a.name , 外键字段所在的表=CASE WHEN tony.fkey is ...
  • 修改表结构添加外键约束,默认外键名 alter table SUPPLIER_INFO add foreign key (CREATE_USER) references users (USERID); 转载于:https://my.oschina.net/nyniuch/blog/83734
  • select b.name,d.name from sysobjects a join sysobjects b on a.id=b.parent_obj join sysforeignkeys c on b.id=c.constid join sysobjects d on c.rkeyid=d.id
  • 查看所有外键

    2017-08-25 11:15:12
    外键表名称 = object_name ( b . fkeyid )   , 外键列ID = b . fkey   , 外键列名 = ( SELECT name FROM syscolumns WHERE colid = b . fkey AND id = b . fkeyid )  ...
  • 有时候删除某张表记录的时候,会报错外键约束不能删除。如果不了解表之间的关系,可以通过以下语句查询到外键是建在哪张表上的:select*fromdba_constraintswhereconstraint_name='xxx'andconstraint_type='R';例如...
  • DB2V8 constraint外键约束和索引的长度不能大于18
  • 1、查找表的所有索引(包括索引,类型,构成列):  select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name =...
  • oracle查看外键信息代码

    千次阅读 2018-12-17 17:00:21
    (1)查看数据库表外键信息 (2)查询表的约束 (3)查询表的字段信息 ORA-02291: integrity constraint () violated - parent key not found 原因:外键关联。所谓外键关系就是一个表中的列引用了其他表中的列...
  • mysql 外键名为什么不能重复?

    千次阅读 2017-01-11 09:24:00
    2019独角兽企业重金招聘Python工程师标准>>> mysql 外键名为什么不能重复? 转载于:https://my.oschina.net/xuyaoxiang/blog/822586
  • 转自:...   1、查找表的所有索引(包括索引,类型,构成列)  select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 126,445
精华内容 50,578
关键字:

查看外键名