ホームページ >データベース >mysql チュートリアル >既存の MySQL 列に NOT NULL 制約を追加するにはどうすればよいですか?

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

DDD
DDDオリジナル
2024-11-07 05:05:02932ブラウズ

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

Not Null 制約を使用した既存の MySQL 列の変更

データベース スキーマを使用する場合、データの整合性を確保することが重要です。 MySQL では、既存のカラムに NOT NULL 制約を追加して、NULL 値の保存を防ぐことができます。

問題: P_Id、LastName、および FirstName というカラムを持つ person という名前のテーブルがあります。ただし、P_Id の NOT NULL 制約が省略されました。

構文エラー: 次のクエリを使用して NOT NULL 制約を追加しようとすると、構文がエラーになる可能性があります。エラー:

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

解決策:

既存の列に NOT NULL 制約を追加するための正しい構文は:

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

注:

  1. MODIFY を使用する場合は、必ず完全な列定義を指定してください。デフォルト値または列のコメントを含めます。
  2. SHOW CREATE TABLE YourTable を使用して既存の列定義を取得できます。これにより、既存のプロパティが失われることがなくなります。

これらの手順に従うことで、既存の列を効果的に変更し、NOT NULL 制約を追加して、MySQL テーブル内のデータの整合性を確保できます。

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

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