Home Database Mysql Tutorial Mysql中的Cascade,NO ACTION,Restrict,SET NULL_MySQL

Mysql中的Cascade,NO ACTION,Restrict,SET NULL_MySQL

Jun 01, 2016 pm 01:30 PM
insert update

bitsCN.com

Mysql中的Cascade,NO ACTION,Restrict,SET NULL

 

外键约束对子表的含义: 

如果在父表中找不到候选键,则不允许在子表上进行insert/update 

 

外键约束对父表的含义: 

在父表上进行update/delete以更新或删除在子表中有一条或多条对应匹配行的候选键时,父表的行为取决于:在定义子表的外键时指定的on update/on delete子句, InnoDB支持5种方式, 分列如下 :

 

cascade方式 

在父表上update/delete记录时,同步update/delete掉子表的匹配记录 

On delete cascade从mysql3.23.50开始可用; on update cascade从mysql4.0.8开始可用 

 

set null方式 

在父表上update/delete记录时,将子表上匹配记录的列设为null 

要注意子表的外键列不能为not null 

On delete set null从mysql3.23.50开始可用; on update set null从mysql4.0.8开始可用 

 

No action方式 

如果子表中有匹配的记录,则不允许对父表对应候选键进行update/delete操作 

这个是ANSI SQL-92标准,从mysql4.0.8开始支持 

 

Restrict方式 

同no action, 都是立即检查外键约束 

 

 

bitsCN.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Fix: Google Chrome update check failed with error code 3: 0x80040154 Fix: Google Chrome update check failed with error code 3: 0x80040154 Apr 13, 2023 pm 05:46 PM

Google Chrome is one of the most popular browsers in the world and many users prefer to use it as the default browser on their Windows PCs. Chrome offers a wide range of features that make the browsing experience enjoyable and effortless, and therefore, it remains one of the most trusted browsers. But just like any other browser, even Chrome has its own shortcomings, and it's equally prone to bugs and glitches when you need it most. One such error is Error Code 3: 0x80040154, which occurs while checking for Google Chrome updates. The error message reads "An error occurred while checking for updates. The update check failed to start (Error code 3: 0x80080005) or (Error

How to enable/disable VS Code automatic updates How to enable/disable VS Code automatic updates Apr 28, 2023 am 09:28 AM

If you are using Visual Studio Code (VSCode) and thinking about how to disable its automatic software updates and how to disable the automatic updates of its extensions, then read this article. If you don't use VSCode often, open the editor after a long period of time and want to enable automatic updates, this article will also guide you in doing so. Let us discuss in detail the different ways to enable or disable VSCode automatic updates. Table of Contents Method One: Use Settings to Enable/Disable VSCode Automatic Updates Step 1: Open VS Code and click the gear-shaped symbol in the lower left corner. Step 2: Click Settings in the list that appears. Step 3: Type update in the search bar and hit enter. Find Updates: Pattern 4

KDE Plasma 6.1 brings many enhancements to the popular Linux desktop KDE Plasma 6.1 brings many enhancements to the popular Linux desktop Jun 23, 2024 am 07:54 AM

After several pre-releases, the KDE Plasma development team unveiled version 6.0 of its desktop environment for Linux and BSD systems on 28 February, using the Qt6 framework for the first time. KDE Plasma 6.1 now comes with a number of new features t

Solution to high CPU usage of Microsoft compatibility telemetry Solution to high CPU usage of Microsoft compatibility telemetry Mar 16, 2024 pm 10:16 PM

When we use the win10 system, we sometimes encounter situations where the computer becomes stuck. Then when we check the background process, we find that a Microsoftcompatibilitytelemetry process takes up a particularly high amount of resources. So what is going on? Users can try to uninstall the third-party protection software and then try a clean boot to operate. Let this site carefully introduce to users the solution to the high CPU usage of Microsoftcompatibilitytelemetry. Solution to the high CPU usage of Microsoftcompatibilitytelemetry Method 1: Try after uninstalling the third-party protection software

How to use UPDATE statement in SQL How to use UPDATE statement in SQL Jun 02, 2023 pm 09:13 PM

SQLUPDATE statement The Update statement is used to modify the data in the table. The syntax is as follows: UPDATE table name SET column name = new value WHERE column name = certain value "Person" table: LastNameFirstNameAddressCityGatesBillXuanwumen10BeijingWilsonChamps-Elysees Update a column in a certain row UPDATEPerson SETFirstName="Fred" WHERELastName="Wilson" Result: LastNa

What is the difference between insert ignore, insert and replace in mysql What is the difference between insert ignore, insert and replace in mysql May 29, 2023 pm 04:40 PM

The difference between insertignore, insert and replace instructions already exist or not. Example of insert error. Insertintonames(name,age)values("Xiao Ming", 23); insertignore ignores insertignoreintonames(name, age)values("Xiao Ming", 24); replace Replace and insert replaceintonames(name,age)values("Xiao Ming", 25); table requirements: PrimaryKey, or unique index result: the table id will be automatically incremented. Test code creates table

In-depth exploration of the usage details of UPDATE in MySQL In-depth exploration of the usage details of UPDATE in MySQL Oct 11, 2022 pm 07:32 PM

In MySQL, you can use the UPDATE statement to modify and update data in one or more tables. The following article will help you explore the details of the use of UPDATE in MySQL. I hope it will be helpful to you.

Fitbit Ace LTE receives major update with new games, contactless payment and other features Fitbit Ace LTE receives major update with new games, contactless payment and other features Aug 08, 2024 pm 09:39 PM

The Fitbit Ace LTE was officially launched in May, but is currently only available in the US. The smartwatch is aimed specifically at children, who can receive rewards for games through a more active lifestyle, while parents can always monitor their

See all articles