๊ด€๋ฆฌ ๋ฉ”๋‰ด

chae._.chae

[Error] Cannot add or update a child row: a foreign key constraint fails ๋ณธ๋ฌธ

Error

[Error] Cannot add or update a child row: a foreign key constraint fails

walbe0528 2022. 5. 20. 16:54
728x90
๋ฐ˜์‘ํ˜•

๐Ÿ“Œ ์ƒํ™ฉ

๋‚ด๊ฐ€ ๋งŒ๋“  cartํ…Œ์ด๋ธ”์— ํŠœํ”Œ์„ ์‚ฝ์ž…ํ•˜๋ ค๋Š”๋ฐ ์•„๋ž˜์˜ ์—๋Ÿฌ๊ฐ€ ๋–ด๋‹ค. 

 

๋‚ด๊ฐ€ ์„ค๊ณ„ํ•œ cartํ…Œ์ด๋ธ”

CREATE TABLE `cart` (
  `id` int NOT NULL,
  `cart_detail_id` int NOT NULL,
  `order-date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `user_id` int NOT NULL,
  PRIMARY KEY (`id`),
  KEY `user_id` (`id`),
  CONSTRAINT `id` FOREIGN KEY (`id`) REFERENCES `user` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

 

INSERT INTO `shop`.`cart` (`id`, `cart_detail_id`, `user_id`) VALUES ('1', '10', '2016428');

๋‚ด๊ฐ€ ๋‚ ๋ฆฐ ์ฟผ๋ฆฌ๋ฌธ์ด๋‹ค.

 

 

๐Ÿ“Œ ์—๋Ÿฌ ๋ฐ ํ•ด๊ฒฐ๋ฐฉ์•ˆ

์•„๋ž˜์˜ ์—๋Ÿฌ์ฝ”๋“œ๊ฐ€ ๋–ด๋‹ค. 

Cannot add or update a child row: a foreign key constraint fails (`shop`.`cart`, CONSTRAINT `id` FOREIGN KEY (`id`) REFERENCES `user` (`id`))

 

 

cartํ…Œ์ด๋ธ” ์„ค๊ณ„์‹œ user_id ์ปฌ๋Ÿผ์€ userํ…Œ์ด๋ธ”์—์„œ FK์ฐธ์กฐํ•˜๋„๋ก ์„ค๊ณ„ํ•ด๋‘์—ˆ๋Š”๋ฐ, ์ฐธ์กฐํ•œ๋‹ค๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•˜์ง€ ๋ชปํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์•„๋ฌด๊ฐ’์ด๋‚˜ ๋„ฃ์–ด์„œ ๋‚œ ์—๋Ÿฌ์ด๋‹ค.

 

์ฆ‰, ๋‚ด๊ฐ€ ์‚ฝ์ž…ํ•œ user_id=2๋ผ๋Š” ์œ ์ €๊ฐ€ ์—†๊ธฐ๋•Œ๋ฌธ์— ์ฐธ์กฐํ•˜๋Š” userํ…Œ์ด๋ธ”์— ์—†๋Š” ๊ฐ’์„ ์ถ”๊ฐ€ํ•ด์„œ ๋ฐœ์ƒํ•œ ์˜ค๋ฅ˜์ด๋‹ค. 

user_id=2์ธ ํ…Œ์ดํ„ฐ๋ฅผ ๋„ฃ๊ณ  ์‹ถ๋‹ค๋ฉด ์ฐธ์กฐํ•˜๋Š” ํ…Œ์ด๋ธ”์ธ user์— ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ๋จผ์ € ์ถ”๊ฐ€ํ•œ ๋’ค, ์ฐธ์กฐ๋ฐ›๋Š” ํ…Œ์ด๋ธ”์— ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ํ•ด๊ฒฐ๋œ๋‹ค. (์™ธ๋ž˜ํ‚ค๋กœ ์—ฐ๊ฒฐํ•œ ๊ฐ’์„ ๋™์ผํ•˜๊ฒŒ ํ•ด์ค˜์•ผ ํ•œ๋‹ค!!)

 

์ง„์งœ ๋ณ„๊ฒƒ๋„ ์•„๋‹Œ ์—๋Ÿฌ์ธ๋ฐ ์ผ์š”์ผ์— ํƒ€์ž„์Šคํ€˜์–ด๊ณต์—ฐ ๋ณด๋ ค๊ณ  ๋นจ๋ฆฌํ•˜๋‹ค๋ณด๋‹ˆ๊นŒ ๋ณ„ ์ด์ƒํ•œ ์ง“์„ ํ•˜๋Š”๊ตฌ๋‚˜...

๋‚˜ ์ง„์งœ ๊ณผ์ œ ๋‹ค๋๋‚ด๊ณ  ๋ฌด์กฐ๊ฑด ๊ฐˆ๊ฑฐ์•ผ.....

728x90