記事へのコメント51

    • 注目コメント
    • 新着コメント
    オーナーコメントを固定しています
    tomo_ari
    オーナー tomo_ari blogged

    2026/02/08 リンク

    その他
    kiririmode
    “システム全体のことを考えたらアプリに不変条件を記述することになるし、そのとき外部キー制約の出番はないよね”

    その他
    ka-ka_xyz
    アプリコード側の厳密性をそこまで信頼できる?って言われると、自分は無理。(ゴンドラ作業するときに、「安全確保はゴンドラ側の責務でありフルハーネスは二重管理で無駄」とか言わないじゃん

    その他
    aike
    仕組みとしては良いんだけど、もっと迅速に参照・操作できる標準的なGUI/CUIがあればいいなとは思う。整合性はトランザクションで保証するというのは全面的に賛成ではないけど経験的な実感としては一理ある。

    その他
    auto_chan
    「制約はアプリの責務」って考え方には共感。DBでも担保しておくのはアリだけど二重管理だし、開発中にテーブル作り直したり関心のあるテーブルにだけ雑なデータ入れようと思ったら制約にかかったり発狂しがち

    その他
    da-yoshi
    データ整合性が壊れたまま運用続けてスキーマが腐れているシステムの運用保守をやったことがあるかどうかで意見が異なる気がしている

    その他
    Error401
    そして、find_and_delete_orphan_data.shなんかを作って、cronで回す羽目になる

    その他
    ihirokyx
    ihirokyx 外部キー制約は運用上の障壁になるだけでなく整合性を守る仕組みとしては力不足すぎる システム全体のことを考えたとき、不変条件はアプリケーションにエンコードせざるを得ないのだからそちらに寄せるほうが合理的

    2026/02/09 リンク

    その他
    PrivateIntMain
    ふつうDBはDBの世界だけで完結しているべきでアプリの都合なんか関係無いはずなのだけど、往々にして密結合になっているしアプリのデータの入れ物としてしかDBを使わないなら外部キー制約は邪魔って話かしら。

    その他
    secseek
    LinuxにRustはいらないってのと似てますね。それで問題ないなら確かにいらないんでしょう。実際、Linuxほど複雑な問題は世の中にそうはないので、大抵はあんな厳しい制約はいらないのかも

    その他
    honeybe
    キー制約が最後のガードになるからある方が良い派

    その他
    sechs
    人間が間違えないなら必要ない機能。外部キーを使うことで増加する計算コストを抑える何かがあればよい?

    その他
    MtAsuka
    外部キーはとりあえずDB定義見ただけで理解できるメタデータ定義でもあるので複雑なシステムなら必須だと思う。アプリで定義した制約は簡単に見れないでしょ?

    その他
    jojo800
    mysqlでマルチテナントの場合、異なるテナントに紐づくのはアプリで整合性担保しないといけないので気休め程度にしかならんのでは。とは思う。けどまぁ必要ない。とは思わないかな。

    その他
    devrabi
    外部キーが完全ではないからと言って、存在するメリットを大きく上回るデメリットがない限り、受け入れて利用するだけでしょう

    その他
    tettekete37564
    PHPer臭い

    その他
    versatile
    支持します。FKは人類にはまだはやい。DBはもうそろそろ自由に羽ばたけ。リレーショナルから解放されろ。もう30年以上まえからオブジェクトDBとかあるのになぁ

    その他
    monokoto01
    外部キーの役割は、アプリ側で実装するのが良いよね

    その他
    sionsou
    登壇内容を見てないのであまり強いことは言えないし、少なくとも自分より優秀な人なのでそれなりの運用や意図があってやってることはわかるけど…それでも外部キー制約は必要だと俺は思う。運用次第なのかなぁ

    その他
    onesplat
    all or nothingではないはずのものを「益がない」などと断定してしまうところがダメなのではないだろうか。益がないはずはないんだよね、トレードオフなだけで

    その他
    yosio_ism
    すべてを外部制約で解決できないからって、外部制約が要らないことにはならないんじゃないかな

    その他
    rryu
    外部キー制約を付けるとデータのストア順に制約が付くのだが、一括操作系のツールがそれに対応していないとハマるという。で、それで得られる利点は外部キーがあればその先もあるという保証だけなのが…

    その他
    mkusaka
    外部キー制約は運用負担で整合性表現が弱く、DDL(CREATE TABLE)やMySQLではStripe等の分散ケースを守れないため、アプリに不変条件をエンコードすべきと論じます。

    その他
    door-s-dev
    ON DELETE CASCADEとかは使わないってことなのか

    その他
    dodefeg
    「address = null のユーザーは商品を注文できない」は「DDLの制約」として表現可能なトリガで保証できます。なおアプリ側に集中させてDB側を単純化する、という考え方があり得ること自体は理解します。

    その他
    dekasasaki
    “より悪いことに、保証が極めて弱いことで知られる "インターネット" を通してやりとりすることになります。” ???

    その他
    taguch1
    taguch1 ソフトウェアはバグるから絶対に壊れたデータは入ってくる。それを抱えたまま運用するのって長いことソフトウェアエンジニアやってもしんどい。それが少なくなるなら多少のめんどくささは許容する。

    2026/02/08 リンク

    その他
    kagehiens
    外部キー制約は面倒は確実に発生するのに、それによって守れるものがどの程度あるかというと、うーん、だからなぁ……。

    その他
    ed_v3
    まぁチームで認識あってればどっちでもいんじゃね。

    その他
    revert
    こういう人が必要としているのはRDBではないのだろうな

    その他
    ryudenx
    削除するときに外部制約があるとかなりめんどい

    その他

    注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

    アプリのスクリーンショット
    いまの話題をアプリでチェック!
    • バナー広告なし
    • ミュート機能あり
    • ダークモード搭載
    アプリをダウンロード

    関連記事

    それでも外部キー制約は必要ない / #fk_night でしゃべってきました

    11年ぶりに外部キーNightが帰ってきます。 (前回のイベントはこちら: https://connpass.com/event/11463...

    ブックマークしたユーザー

    • kumokaji2026/02/16 kumokaji
    • kiririmode2026/02/11 kiririmode
    • atashinotokoronikinasai2026/02/11 atashinotokoronikinasai
    • donotthinkfeel2026/02/10 donotthinkfeel
    • yug12242026/02/10 yug1224
    • wktk_msum2026/02/10 wktk_msum
    • p-cscscs2026/02/10 p-cscscs
    • torimetal2026/02/09 torimetal
    • todays_mitsui2026/02/09 todays_mitsui
    • fjwr382026/02/09 fjwr38
    • murasuke2026/02/09 murasuke
    • dorupoppo2026/02/09 dorupoppo
    • daichirata2026/02/09 daichirata
    • ka-ka_xyz2026/02/09 ka-ka_xyz
    • mas-higa2026/02/09 mas-higa
    • Phenomenon2026/02/09 Phenomenon
    • fkmy2026/02/09 fkmy
    • aike2026/02/09 aike
    すべてのユーザーの
    詳細を表示します

    同じサイトの新着

    同じサイトの新着をもっと読む

    いま人気の記事

    いま人気の記事をもっと読む

    いま人気の記事 - テクノロジー

    いま人気の記事 - テクノロジーをもっと読む

    新着記事 - テクノロジー

    新着記事 - テクノロジーをもっと読む

    同時期にブックマークされた記事

    いま人気の記事 - 企業メディア

    企業メディアをもっと読む