{"id":97,"date":"2021-11-22T09:00:00","date_gmt":"2021-11-22T00:00:00","guid":{"rendered":"https:\/\/www.miracleave.co.jp\/contents\/?p=97"},"modified":"2023-05-23T12:26:17","modified_gmt":"2023-05-23T03:26:17","slug":"mysql-delete-forginkey","status":"publish","type":"post","link":"https:\/\/www.miracleave.co.jp\/contents\/97\/mysql-delete-forginkey\/","title":{"rendered":"mysql\u3067\u5916\u90e8\u30ad\u30fc\u5236\u7d04\u3092\u6301\u3063\u3066\u3044\u308b\u30c6\u30fc\u30d6\u30eb\u306e\u30c7\u30fc\u30bf\u3092\u524a\u9664\u3059\u308b"},"content":{"rendered":"\n<div class=\"wp-block-cocoon-blocks-icon-box common-icon-box block-box information-box\">\n\n<p>\u8a18\u4e8b\u4f5c\u6210\u304b\u30891\u5e74\u4ee5\u4e0a\u7d4c\u904e\u3057\u3066\u3044\u307e\u3059\u3002<br>\u5185\u5bb9\u304c\u53e4\u3044\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n<\/div>\n\n\n\n<p>\u4eca\u65e5\u306fmysql\u3067\u5916\u90e8\u30ad\u30fc\u5236\u7d04\u3092\u6301\u3064\u30c6\u30fc\u30d6\u30eb\u306e\u30c7\u30fc\u30bf\u3092\u524a\u9664\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u6642\u306b\u6bce\u56de\u8abf\u3079\u3066\u3044\u308b\u6c17\u304c\u3057\u305f\u306e\u3067\u5099\u5fd8\u9332\u3068\u3057\u3066\u66f8\u304d\u7559\u3081\u3066\u304a\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u7d50\u8ad6<\/h2>\n\n\n\n<p><code>SET FOREIGN_KEY_CHECKS = 0<\/code>\u3092\u4f7f\u3063\u3066\u5236\u7d04\u3092\u4e00\u6642\u7684\u306b\u89e3\u9664\u3059\u308b\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u53c2\u8003<\/h2>\n\n\n\n<p><a href=\"https:\/\/railsguides.jp\/association_basics.html\">rails\u30ac\u30a4\u30c9<\/a><br>[MySQL 5.6 \u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u30de\u30cb\u30e5\u30a2\u30eb](MySQL 5.6 \u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u30de\u30cb\u30e5\u30a2\u30eb)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u30e2\u30c7\u30eb\u306e\u95a2\u9023\u4ed8\u3051<\/h2>\n\n\n\n<p>\u666e\u6bb5\u306e\u696d\u52d9\u3067rails\u3092\u4f7f\u3063\u3066\u3044\u308b\u306e\u3067rails\u3067\u8aac\u660e\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-ruby\" data-lang=\"Ruby\"><code># item\n# \u5546\u54c1\u3092\u7ba1\u7406\u3059\u308b\u30e2\u30c7\u30eb\ncreate_table &quot;items&quot;, charset: &quot;utf8mb4&quot;, force: :cascade do |t|\n    t.string &quot;item_name&quot;\n    t.datetime &quot;created_at&quot;, precision: 6, null: false\n    t.datetime &quot;updated_at&quot;, precision: 6, null: false\nend\n\n# item_detail\n# \u5546\u54c1\u306e\u8a73\u7d30\u3092\u7ba1\u7406\u3059\u308b\u30e2\u30c7\u30eb\ncreate_table &quot;item_details&quot;, charset: &quot;utf8mb4&quot;, force: :cascade do |t|\n    t.bigint &quot;item_id&quot; &lt;=  \u3053\u308c\u304c\u5916\u90e8\u30ad\u30fc\n    t.integer &quot;item_price&quot;\n    t.string &quot;description&quot;\n    t.datetime &quot;created_at&quot;, precision: 6, null: false\n    t.datetime &quot;updated_at&quot;, precision: 6, null: false\nend\n\n# item_detail\nclass CreateItemDetails &lt; ActiveRecord::Migration[6.1]\n  def change\n    create_table :item_details do |t|\n      t.references :item, foreign_key: { to_table: :items } &lt;= \u3053\u308c\u304c\u5916\u90e8\u30ad\u30fc\u5236\u7d04\n      t.integer &quot;item_price&quot;\n      t.string &quot;description&quot;\n\n      t.timestamps\n    end\n  end\nend<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">item\u30c6\u30fc\u30d6\u30eb\u306e\u30c7\u30fc\u30bf\u3092\u524a\u9664\u3059\u308b<\/h2>\n\n\n\n<p>\u958b\u767a\u4e2d\u306b\u8272\u3005\u30c7\u30fc\u30bf\u3092\u52a0\u5de5\u3057\u305f\u308a\u3001\u524a\u9664\u3057\u305f\u308a\u3059\u308b\u4e8b\u304c\u3042\u308b\u3068\u601d\u3044\u307e\u3059\u304c\u3001\u4e00\u56de\u30c6\u30fc\u30d6\u30eb\u306e\u30c7\u30fc\u30bf\u3092<code>truncate<\/code>\u3057\u3088\u3046\u304b\u306a\u30fc\u3068\u601d\u3063\u305f\u3089\u6012\u3089\u308c\u305f\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-ruby\" data-lang=\"Ruby\"><code>mysql &gt; truncate table items;\nERROR 1701 (42000): Cannot truncate a table referenced in a foreign key constraint (`test_item_development`.`item_details`, CONSTRAINT `fk_rails_30c7a965d1` FOREIGN KEY (`item_id`) REFERENCES `test_item_development`.`items` (`id`))<\/code><\/pre><\/div>\n\n\n\n<p>\u3053\u3093\u306a\u6642\u3001\u958b\u767a\u74b0\u5883\u3067\u3042\u308c\u3070\u4f55\u3082\u8003\u3048\u305a\u4ee5\u4e0b\u3092\u5b9f\u884c\u3057\u3066<code>truncate<\/code>\u3055\u305b\u3061\u3083\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-ruby\" data-lang=\"Ruby\"><code>mysql &gt; set foreign_key_checks = 0;\nmysql &gt; truncate table items;\n=&gt; query ok\u30fb\u30fb\u30fb\u30fb\nmysql &gt; set foreign_key_checks = 1;<\/code><\/pre><\/div>\n\n\n\n<p><code>set foreign_key_checks = 1;<\/code>\u3067\u5143\u306b\u623b\u3057\u307e\u3057\u3087\u3046<\/p>\n\n\n\n<p>\u304a\u308f\u308a<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4eca\u65e5\u306fmysql\u3067\u5916\u90e8\u30ad\u30fc\u5236\u7d04\u3092\u6301\u3064\u30c6\u30fc\u30d6\u30eb\u306e\u30c7\u30fc\u30bf\u3092\u524a\u9664\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u6642\u306b\u6bce\u56de\u8abf\u3079\u3066\u3044\u308b\u6c17\u304c\u3057\u305f\u306e\u3067\u5099\u5fd8\u9332\u3068\u3057\u3066\u66f8\u304d\u7559\u3081\u3066\u304a\u304d\u307e\u3059\u3002 \u7d50\u8ad6 SET FOREIGN_KEY_CHECKS = 0\u3092\u4f7f\u3063\u3066\u5236\u7d04\u3092\u4e00\u6642\u7684\u306b\u89e3\u9664 [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":558,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"swell_btn_cv_data":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[12],"class_list":["post-97","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tech","tag-mysql"],"jetpack_featured_media_url":"https:\/\/www.miracleave.co.jp\/contents\/wp-content\/uploads\/2021\/10\/MySQL.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/posts\/97","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/comments?post=97"}],"version-history":[{"count":4,"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/posts\/97\/revisions"}],"predecessor-version":[{"id":2418,"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/posts\/97\/revisions\/2418"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/media\/558"}],"wp:attachment":[{"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/media?parent=97"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/categories?post=97"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.miracleave.co.jp\/contents\/wp-json\/wp\/v2\/tags?post=97"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}