[解決済み] MySQLで既存のカラムにnot null制約を追加する方法
2022-04-13 08:21:13
質問
Person という名前のテーブルがあり、以下のカラム名があります。
P_Id(int),
LastName(varchar),
FirstName (varchar).
を与えるのを忘れていました。
NOT NULL
への制約
P_Id
.
今度は、以下のクエリで追加してみました。
NOT NULL
という既存のカラムに制約をかける。
P_Id
,
1. ALTER TABLE Person MODIFY (P_Id NOT NULL);
2. ALTER TABLE Person ADD CONSTRAINT NOT NULL NOT NULL (P_Id);
シンタックスエラーが発生するのですが・・・。
どうすればいいですか?
ただ
ALTER TABLE... MODIFY...
クエリを作成し
NOT NULL
を既存のカラムの定義に追加します。例えば
ALTER TABLE Person MODIFY P_Id INT(11) NOT NULL;
注意点としては、「1.
フル
を使用する場合は、再度列の定義を行います。
MODIFY
クエリで使用することができます。カラムに、たとえば
DEFAULT
値、あるいはカラムのコメントを指定する必要があります。
MODIFY
文は、データ型と
NOT NULL
でないと、失われます。このような災難から守るための最も安全な方法は、列の定義を
SHOW CREATE TABLE YourTable
クエリを作成し、そのクエリに
NOT NULL
制約を設定し、それを
ALTER TABLE... MODIFY...
のクエリを作成します。
関連
-
Mysql がエラー 1241 を報告 オペランドは 1 つのカラムを含む必要があります。
-
SQL Server のトランザクションは、try キャッチに記述しなければ、中間ステートメントがエラーを報告してもコミットされます。
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] Ruby on Railsのマイグレーションでデータベースのカラムの名前を変更するにはどうすればよいですか?
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法
-
[解決済み] MySQLのクエリ結果をCSV形式で出力するにはどうすればよいですか?
-
[解決済み] カラムの変更:NULLをNOT NULLに変更する
-
[解決済み] MySQLで複数のカラムに一意制約を指定するには?
-
[解決済み】MySQLのDatetimeカラムにデフォルト値を設定する方法とは?
-
[解決済み】既存テーブルへの外部キー追加
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
mysqlでインデックスに障害が発生する原因は何ですか?
-
MySQLデータベースでvarchar型の数値の大きさを比較する方法
-
SpringBootのMySQLへの接続は、バックエンドのインターフェイスの操作方法を書き込むためのデータを取得するために
-
sql エラーを解決する オペランドには1つの列が含まれている必要があります。
-
MySQLの起動エラー:ERROR 2003 (HY000)。localhost'上のMySQLサーバーに接続できない(10061)
-
PostMan レポート エラー: 接続 ECONNREFUSED 127.0.0.1:port number
-
[解決済み] どのトランザクションが「テーブルメタデータのロック待ち」状態を引き起こしているかを確認するにはどうすればよいですか?
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] utf8_general_ciとutf8_unicode_ciの違いは何ですか?
-
[解決済み] MySQLデータベースのテーブルのサイズを取得する方法は?