sql >> データベース >  >> RDS >> Mysql

削除した行のギャップを再利用したい

    本当に、あなたはすべきではありません。主キーは純粋に技術的な、意味のない値である必要があります。それらの価値、そして世代の単調さは、まったく問題ではないはずです。

    さらに、これは行のPKであるため、他のテーブルにこのID(外部キー)を参照する他の行が数十(または数千)ある可能性があります。したがって、テーブルで変更するだけでは不十分です。変更する必要があります。どこにでもあります。

    また、このIDが他のアプリケーションでも参照されている可能性が高く(たとえば、ブラウザでブックマークされたURLの一部である可能性があります)、その値を変更すると、これらの参照がすべて無効になります。

    主キーは絶対に変更しないでください。永遠に不変でなければなりません。

    編集:私は質問を読み間違えました。あなたは実際に古いIDを再利用したいと思っています。これも悪い考えです。既存の参照は、最初に参照したもの以外のものを参照します。これは、あなたがあなたの電話番号を変更し、それが他の誰かによって再利用されているときに起こることです。他の誰かは、この電話番号があなたのものであるとまだ思っている人々からたくさんの電話を受け始めます。とてもうるさい。この状況を避けたいと思います。




    1. SQL Serverのプロシージャ/トリガー内のテキストを見つける方法は?

    2. 再帰的なMySQLクエリ?

    3. MySQLで列のデフォルト値を削除する方法

    4. innosetupでmysqlのサイレントインストールを行う方法は?