どのようにテーブルを変更すると、名前付きデフォルト制約と名前付き外部キー制約を持つ列が追加されますか?
2023-11-10 12:26:56
質問
2 つの既存のテーブル (TableA と TableB) があり、TableB への外部キーを持ち、NULL ではないデフォルト値を持つ新しい列を TableA に追加する必要があります。どうすればよいですか?
どのように解決するのですか?
1つのステートメントで両方の制約を追加することは、私が思っていたほど簡単ではなく、多くの例もないようでした(少なくとも、私は簡単に見つけることができませんでした)ので、私がここでそれを行った方法を共有しようと思いました。
ALTER TABLE [table name] ADD
[New Column Name] [Column Type]
CONSTRAINT [constraint name] DEFAULT ([default value]) NOT NULL,
CONSTRAINT [constraint name] FOREIGN KEY ([New Column Name])
REFERENCES [Other Table] ([Foreign ID])
例
ALTER TABLE tableA ADD
myNewColumn BIGINT
CONSTRAINT myNamedConstraint_df default (1) NOT NULL,
CONSTRAINT myNamedConstraint_fk FOREIGN KEY (myNewColumn)
REFERENCES tableB (tableBPrimaryKeyID)
関連
-
[解決済み] 外部キーはNULLや重複にできますか?
-
[解決済み] SQL Server テーブルにカラムが存在するかどうかを確認する方法は?
-
[解決済み] カラムの変更:NULLをNOT NULLに変更する
-
[解決済み] SQL Serverでレコードを削除した後、IDシードをリセットする。
-
[解決済み] NULLも許容するユニークな制約を作成するにはどうしたらいいですか?
-
[解決済み] 外部キーは自動的にインデックスを作成しますか?
-
[解決済み】SQL Serverで既存のテーブルにデフォルト値を持つカラムを追加する
-
[解決済み】SQL Server、既存のテーブルに自動インクリメントの主キーを追加する。
-
[解決済み] 外部キー制約は、サイクルまたは複数のカスケードパスの原因となる可能性がありますか?
-
[解決済み] SQL Serverで、列の追加ステートメントで名前付きデフォルト制約を作成することはできますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】各GROUP BY式は、外部参照でない列を少なくとも1つ含む必要があります。
-
[解決済み】フラットファイルの日付カラムで「キャスト指定に無効な文字値があります」を修正する方法とは?
-
[解決済み] SQL Server Error "String Data, Right Truncation "の意味と修正方法について教えてください。
-
[解決済み] SQL Server 2012 エラー: オブジェクト参照がオブジェクトのインスタンスに設定されていない
-
[解決済み] パーセント値を保持するための適切なデータ型?
-
[解決済み] 結果を分割するためのSQLの小数点以下の値
-
[解決済み] 変数に値を代入するSELECT文は、データ検索操作と組み合わせてはいけません。
-
[解決済み] SQL ServerのIsNull()関数に相当するOracleは何ですか?
-
[解決済み] SQL Server の .sql ファイルとは何ですか?
-
[解決済み] SQLのReplace関数内の正規表現?