[解決済み] PostgreSQLのクエリで、1つのクエリで列の名前を変更し、列のタイプを変更することができます。
2022-03-07 09:48:40
質問
PostgreSQLで、カラムの名前を変更したりデータ型を変更したりする必要がある場合、2つの別々のクエリを実行しています。
名前を変更する場合。
ALTER TABLE tblName RENAME <oldColumn> TO <newColumn>
で、カラムの種類を変更します。
ALTER TABLE tblName ALTER COLUMN <newColumn> <columnType>.
しかし、以下のMySQLクエリのように、1つのクエリでこれら2つの作業を行う方法はないでしょうか?
ALTER TABLE tblName CHANGE COLUMN <oldColumn> <newColumn> <columnType>
解決方法は?
PostgreSQLの場合。
ALTER TABLE
は一連の操作を取ることができます。だから
ALTER TABLE <tablename> RENAME <oldcolumn> TO <newcolumn>;
ALTER TABLE <tablename> ALTER COLUMN <columnname> TYPE <newtype>;
と同じです。
ALTER TABLE <tablename>
ALTER COLUMN <columnname> TYPE <newtype>
RENAME <oldcolumn> TO <newcolumn>;
しかし...なぜ?IRCでは、名前の変更はフルテーブルスキャンを引き起こさないので、1つのトランザクション内で2つのステートメントを別々に実行する以上の利点はありません。この処理で解決しようとする問題は何ですか?
関連
-
[解決済み] テスト
-
[解決済み] テスト
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み] PostgreSQLのユーザーパスワードを変更する方法を教えてください。
-
[解決済み] カラム名の変更 SQL Server 2008
-
[解決済み] コマンドライン引数でPostgreSQLの.sqlファイルを実行する
-
[解決済み] PostgreSQLで一重引用符で囲まれたテキストを挿入する
-
[解決済み] psqlの代替出力フォーマット
-
[解決済み】SQL Serverで既存のテーブルにデフォルト値を持つカラムを追加する
-
[解決済み] Postgresql - varcharカラムのサイズを小さく変更する
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ERROR: 参照されたテーブル "bar" の与えられたキーに一致するユニークな制約がありません。
-
[解決済み】オペランド型の衝突:intはdateと互換性がない + INSERT文はFOREIGN KEY制約と衝突した
-
[解決済み】Teradata - 計算中に数値のオーバーフローが発生しました。
-
[解決済み】INTERSECTとINNER JOINは根本的に違うのか?[重複している]
-
[解決済み】sys.dm_exec_sql_textはどのように機能するのでしょうか?
-
[解決済み] SQL Server サブクエリが 1 つ以上の値を返しました。これは、サブクエリが =, !=, <, <= , >, >= のように続く場合は許可されません。
-
[解決済み] CLOBとNCLOBの違いは何ですか?
-
[解決済み] ORA-01821: ISO 8601 のローカルタイム付き日付のフォーマットが認識されないエラー
-
[解決済み] マルチパート識別子をバインドできなかった
-
[解決済み] MySQLのON句の不明なカラム