Code前端首页关于Code前端联系我们

如何在mysql数据库中创建外键 mysql createforeignkey

terry 2年前 (2023-09-30) 阅读数 47 #Mysql
文章标签 Mysql

本文内容列表:

  • 1、mysql中如何定义外键
  • 2.如何给mysql数据库添加外键
  • 3、MySQL创建外键时,如何创建多对多?
  • 4. mysql中如何设置外键
  • 5、MySQL中如何设置主键和外键

如何在mysql中定义外键

mysql数据库

建立外键的前提:此表的列必须与外键类型相同(外键必须是外键的主键)。

外键功能:连接两个表,外键只能引用表中的列值!

表示主键关键字:Foreignkey(列名)

引用外键关键字:外键表名(外键列名)

触发事件限制:ondelete和onupdate,可以设置参数级联(跟随外键更改)、restrict(限制表中外键更改)、setNull(设置为空)、setDefault(设置默认)、[默认] noaction

例如:

outTable 主键 ID 类型 int

创建带有外键的表:

createtabletemp(

idint,

namechar(20),

foreignkey(id)referencesoutTable(id)ondeletecascadeonupdate外键上的列id指的是外键的列id table outTable.当外键的值被删除时,这个表中对应的列会被过滤掉,当外键的值改变时,这个表中对应的列的值也会改变。

只能通过自己的实践你是否彻底理解了外键的作用了,关键是:限制事件触发的作用

mysql数据库如何添加外键

如何给mysql添加外键: 1.在CREATE TABLE命令中,使用FOREIGN KEY关键字添加外键; 2. 在 ALTER TABLE 语句中,使用 ADD 和 FOREIGN KEY 关键字添加外键。

mysql创建外键时,如何创建多对多?

一张表中只能有一个主键,可以有多个外键。如果一个表中的多个列需要由其他表中的外键引用,则必须使用特定于您的候选代码(非空且唯一)。这个问题的请求可以通过以下方法解决:

在表中设置bookid和authorid,使其非空且唯一,即

create table a(bookid int not null unique,authorid int not null unique);

然后你可以在book表和author表中设置外键来引用表a中的两个不同字段。

打开我的navicat,找到我的教师办公桌,选择它,然后单击菜单栏上的“设计表”

2。在弹出的对话框中,找到“外键”,然后保持分开。

3。之后会出现一个设置外键的界面,一共七栏。我们简单介绍一下这些列的含义。 'name':不需要填写。保存成功后系统会自动生成。 FieldName':是您要设置为外键的键。这里选择'department','Reference DadaBase':与外键关联的数据库。 “参考表”:关联表。这是秒表。 “伪造归档名称”:关联字段。这是“ondelete”代码: 这是删除时选择的操作。我这里选择的是setNull,也就是说当关联表被删除时,字段teacher>department就会被设置为null。

4。设置完成后,点击“保存”保存并退出。您也可以点击“添加外键”再次添加。外键。

打开我的navicat,然后找到我的教师办公桌,选择它并单击菜单栏上的“设计表”。如下图:

2。在弹出的对话框中,找到“外键”,然后单独设置。如下图:

3。之后会出现一个设置外键的界面,一共七栏。我们简单介绍一下这些列的含义。 'name':不需要填写。保存成功后系统会自动生成。 FieldName':是您要设置为外键的键。这里选择'department','Reference DadaBase':与外键关联的数据库。 “参考表”:关联表。这是秒表。 “伪造归档名称”:关联字段。这是“ondelete”代码: 这是删除时选择的操作。我这里选择的是setNull,也就是说当关联表被删除时,字段teacher>department会被设置为null。如图所示

4、设置完成后,点击“保存”保存并退出。您还可以单击“添加外键”来添加另一个外键。 k如图:

mysql中如何设置外键

在已添加的数据表中添加外键:

语法:change table 表名 add 约束 FK_ID 外键(你的外键字段名) REFERENCE 外键表名(对应表的主键字段名);

示例:alter table tb_active add约束 FK_IDforeign key(user_id) REFERENCE tb_user(id)

//FK_ID为外键名称

/*

CREATE BLE ` id` int( 11) NOT NULL AUTO_INCRMENT,

`title` varchar(100) 字符集 utf8 COLLATE utf8_unicode_ci NOT NULL,

`content` text CHARACTER COLLATE ut, `content` text CHARACTER COLLATE ut。 'user_id ` int (11) NOT NULL,

主键 (`id`),

键`user_id` (`user_id`),

键`user_id_2` (`user_id`),

CON FK_ID` FOREIGN KEY (`user_id`) REFERENCES `tb_user` (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1

*/

DROP FOREIGN KEY-名称表 DROP FOREIGN KEY key-id;

示例:ALTER TABLE `tb_active` DROP FOREIGN KEY 'FK_ID'

自动更新和删除键:

但是,外键可以保证新插入记录的完整性,如果它们位于参考 如果从子句中指定的表中删除记录会发生什么情况?使用与外键相同的值的辅助表中会发生什么?

显然,这些记录也应该被删除,否则数据库中将会出现大量无意义的孤立记录。 MYSQL 可以通过向 FOREIGN KEY...REFERENCES 修饰符添加 ON DELETE 或 ON UPDATE 子句来简化此任务,该修饰符表示描述数据库在这种情况下如何处理孤立作业。

MySQL中如何设置主键和外键

工具/材料

MySQL计算机

方法/步骤

设置主键:

1。使用终端,输入 mysql 命令行工具。

2。使用 use 关键字指定目标数据库。

3。如果原表已有主键,则先删除原主键,然后使用DROP PRIMARY KEY命令:ALTER TABLE `jingyan` DROP PRIMARY KEY;。

4。主键不见了。

5。使用以下命令添加 ALTER TABLE `jingyan` ADD PRIMARY KEY (`id`):ADD PRIMARY KEY。

6。输入后,按 Enter 键可以看到表示 ok 查询成功执行的字符。

7。返回数据库可视化工具,您将看到当前表的 id 列添加了主键。

设置外键:

1。创建主从表。

2。选择主表,点击“表设计”,进入表设计界面。

3。点击外键,进入外键设置界面。

4。首先设置外键名称,选择主表的外键字段。

5。然后设置外键字段来匹配数据库、表名、子表字。

6。单击“保存”完成外键设置。

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

热门