ホームページ  >  記事  >  データベース  >  MySQL の既存の列に NOT NULL 制約を追加するにはどうすればよいですか?

MySQL の既存の列に NOT NULL 制約を追加するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-05 11:05:02789ブラウズ

How to Add a NOT NULL Constraint to an Existing Column in MySQL?

既存の MySQL 列に NOT NULL 制約を追加する

列 P_Id (int)、LastName ( varchar)、および FirstName (varchar)。 P_Id カラムの NOT NULL 制約を省略したことに気づき、提供されたクエリを使用して追加しようとしましたが、構文エラーが発生しました。

MySQL の既存のカラムに NOT NULL 制約を追加するための正しい構文ALTER TABLE... MODIFY... ステートメントを使用します。変更されたクエリは次のとおりです。

<code class="sql">ALTER TABLE Person MODIFY P_Id INT(11) NOT NULL;</code>

データ型や既存の属性 (DEFAULT 値や列コメントなど) を含む完全な列定義を指定する必要があることに注意してください。これにより、データまたは列のメタデータが失われる可能性が回避されます。

完全な列定義を取得する最も安全な方法は、SHOW CREATE TABLE クエリを使用することです。

<code class="sql">SHOW CREATE TABLE Person;</code>

次に、次のように出力を変更します。 NOT NULL 制約を選択し、ALTER TABLE... MODIFY... クエリに貼り付けます。これにより、既存の列定義を誤って削除することがなくなります。

以上がMySQL の既存の列に NOT NULL 制約を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。