ホームページ >データベース >mysql チュートリアル >既存の SQL Server テーブルにデフォルト値を持つ新しい列を追加するにはどうすればよいですか?

既存の SQL Server テーブルにデフォルト値を持つ新しい列を追加するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-18 09:16:10331ブラウズ

How to Add a New Column with a Default Value to an Existing SQL Server Table?

デフォルト値を持つ新しい列を既存の SQL Server テーブルに追加する

既存の SQL Server テーブルの変更には、新しい列の追加が含まれることがよくあります。 このプロセスは、新しい列にデフォルト値を割り当てることで簡単に拡張できます。 これにより、データの一貫性が確保され、新しい行の挿入が簡素化されます。

SQL 構文:

<code class="language-sql">ALTER TABLE {TABLENAME}
ADD {COLUMNNAME} {TYPE} {NULL | NOT NULL}
CONSTRAINT {CONSTRAINT_NAME} DEFAULT {DEFAULT_VALUE}
WITH VALUES;</code>

パラメータの説明:

  • {TABLENAME}: 変更しているテーブルの名前。
  • {COLUMNNAME}: 新しい列に付ける名前。
  • {TYPE}: 新しい列のデータ型 (INT、VARCHAR(255)、BIT など)。
  • {NULL | NOT NULL}: 列が NULL 値を受け入れることができるかどうかを指定します。
  • {CONSTRAINT_NAME}: (オプション) デフォルト制約のユーザー定義名。 省略した場合、SQL Server によって名前が自動的に生成されます。
  • {DEFAULT_VALUE}: 挿入中に値が指定されなかった場合に、新しい列に自動的に割り当てられる値。
  • WITH VALUES: (オプション) この句は、列が NULL 値を許可する場合のみ、テーブル内の既存の行にデフォルト値を適用します。

実際的な例:

「Products」という名前のテーブルに「IsActive」列 (BIT データ型) を追加して、NULL を許可し、デフォルトを 1 (true) に設定してみましょう。

<code class="language-sql">ALTER TABLE Products
ADD IsActive BIT NULL
CONSTRAINT DF_Products_IsActive
DEFAULT (1)
WITH VALUES;</code>

重要な考慮事項:

  • 制約名: オプションですが、わかりやすい制約名を指定すると、データベース スキーマの可読性と保守性が向上します。
  • WITH VALUES 句: WITH VALUES は慎重に使用してください。これは、既存の行にデフォルト値を継承させたい場合にのみ必要です。 それ以外の場合、既存の行の新しい列には NULL が含まれます。
  • デフォルトの制約動作: デフォルトの制約は、値が明示的に指定されていない場合にのみ、挿入中に使用される値を決定します。 NULL を明示的に挿入した場合、デフォルト値は無視されます。

この詳細な説明と例により、SQL Server でデフォルト値を持つ列を簡単に追加できるようになります。

以上が既存の SQL Server テーブルにデフォルト値を持つ新しい列を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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