It’s true that if your primary key is just a identity value auto incremented, you would have no real use for ON UPDATE CASCADE.
However, let’s say that your primary key is a 10 digit UPC bar code and because of expansion, you need to change it to a 13-digit UPC bar code. In that case, ON UPDATE CASCADE would allow you to change the primary key value and any tables that have foreign key references to the value will be changed accordingly.
In reference to #4, if you change the child ID to something that doesn’t exist in the parent table (and you have referential integrity), you should get a foreign key error.
Related Posts:
- INSERT statement conflicted with the FOREIGN KEY constraint – SQL Server
- INSERT statement conflicted with the FOREIGN KEY constraint – SQL Server
- MySQL Cannot Add Foreign Key Constraint
- Can a foreign key be NULL and/or duplicate?
- The ALTER TABLE statement conflicted with the FOREIGN KEY constraint
- ERROR: there is no unique constraint matching given keys for referenced table “bar”
- MySQL Error: : ‘Access denied for user ‘root’@’localhost’
- What is the difference between “INNER JOIN” and “OUTER JOIN”?
- SQL WITH clause example [duplicate]
- The wait operation timed out. ASP
- Conversion failed when converting date and/or time from character string while inserting datetime
- how to fix oracle ORA-01722 invalid number error
- SQL query to select dates between two dates
- MySQL – Operand should contain 1 column(s)
- SQL SELECT WHERE field contains words
- MySQL Error: : ‘Access denied for user ‘root’@’localhost’
- NOT IN vs NOT EXISTS
- Must declare the scalar variable
- ORA-00979 not a group by expression
- MySQL query String contains
- How do I escape a single quote in SQL Server?
- T-SQL split string based on delimiter
- Finding duplicate values in a SQL table
- Oracle error : ORA-00905: Missing keyword
- How do I import an SQL file using the command line in MySQL?
- mysql Foreign key constraint is incorrectly formed error
- How do I do multiple CASE WHEN conditions using SQL Server 2008?
- How do composite indexes work?
- Difference between JOIN and INNER JOIN
- MySQL “WITH” clause
- What is the difference between JOIN and UNION?
- MySQL Multiple Joins in one query?
- Error Code: 2013. Lost connection to MySQL server during query
- “CASE” statement within “WHERE” clause in SQL Server 2008
- SQL join on multiple columns in same tables
- ORA-00972 identifier is too long alias column name
- What is the difference between Scope_Identity(), Identity(), @@Identity, and Ident_Current()?
- Sql query – getting rid of hard-coded values
- ORA-00918: column ambiguously defined in SELECT *
- Combining “LIKE” and “IN” for SQL Server
- Oracle – ORA-01489: result of string concatenation is too long [duplicate]
- SQL Server WITH statement
- How to SUM two fields within an SQL query
- DateTime2 vs DateTime in SQL Server
- Difference between numeric, float and decimal in SQL Server
- “ORA-01438: value larger than specified precision allowed for this column” when inserting 3
- Algebra Relational sql GROUP BY SORT BY ORDER BY
- Oracle “Partition By” Keyword
- What is the equivalent of ‘describe table’ in SQL Server?
- Add a column with a default value to an existing table in SQL Server
- Cast from VARCHAR to INT – MySQL
- SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax — PHP — PDO [duplicate]
- Using group by on multiple columns
- What is the purpose of using WHERE 1=1 in SQL statements?
- Conversion failed when converting the varchar value ‘simple, ‘ to data type int
- How do you force mysql LIKE to be case sensitive?
- What is the difference between a stored procedure and a view?
- Bulk load data conversion error (truncation)
- Insert into a MySQL table or update if exists
- Convert timestamp to date in Oracle SQL
- How to order by with union in SQL?
- Can I use multiple “with”?
- PostgreSQL create table if not exists
- Incorrect syntax near ”
- MySQL: Can’t create table (errno: 150)
- Join vs. sub-query
- Alternative to except in MySQL
- DATEDIFF function in Oracle
- GROUP BY and COUNT using ActiveRecord
- MySQL – Get row number on select
- Arithmetic overflow error converting varchar to data type numeric. ’10’ <= 9.00
- Difference between EXISTS and IN in SQL?
- What does * mean in sql?
- How to truncate the text returned for a column in a MySQL query
- INSERT VALUES WHERE NOT EXISTS
- Using union and order by clause in mysql
- Difference between `load data inpath ` and `location` in hive?
- How to implement LIMIT with SQL Server? [duplicate]
- Moving database with phpMyAdmin
- How To Write An Inner Join With WP Query
- Update user_login, user_nicename, and display_name
- Change sticky status of posts from phpMyAdmin
- Fetch all Posts where logged in user has commented
- Best Way to Merge a Dev and Live Site to Become a Staging Site?
- Needing to move content from postmeta to posts in sql [closed]
- How to import a Typo3 database to a wordpress site?
- What does the $posts_join filter join to?
- Clean up very big and very dirty database
- How can I convert everything from category X to have post format Link
- Bulk delete WordPress Post and all metadata, etc using SQL query
- What steps do I need to take to install a local copy of a live website?
- Reset post IDs with all post meta
- How to Add or Change Post Title
- Why does DROP TABLE-ing the `wp_options` reset my user session?
- How to refactor DB queries for better TTFB in WordPress?
- query sql-table and change entities
- Analog category_and (WP) in sql query
- Backtick (MySQL norm) added to SQL Server Query causing error
- SQL query to check whether a meta key is set or not for a post in post_meta table
- This SQL request call all time and overload my server : SELECT meta_value FROM wp_sitemeta WHERE meta_key = ‘wp_installer_network’ AND site_id = 1