CREATE TABLE ではない文を貼ったとき
変更前の欄に ALTER TABLE 文を貼ってしまった例です。読み取れない入力のときに、例外にならずエラーで知らせることを確かめます。
入力
変更前の CREATE TABLE
ALTER TABLE users ADD COLUMN x int;
変更後の CREATE TABLE
CREATE TABLE users (id integer);
結果の見せ方
差分の表
結果
エラー 1 件・警告 0 件・情報 0 件
指摘(エラー・警告・情報)
- エラー 1 行目 変更前: CREATE TABLE が見つかりません。CREATE TABLE 名前 ( 列 型, … ) の形で貼り付けてください。
列の差分
出力はありません(指摘の一覧をご覧ください)。
検算(この結果になる理由)
変更前の欄に CREATE TABLE がないので列の一覧を作れません。変更後は読めるためエラーは変更前の 1 件だけで、差分の表は出力されません。
判定の根拠は仕様と根拠に、仕様の出典とともにまとめています。自分の入力で試すにはツールをお使いください。
このツールの制約
- 型は表記が同じかどうかで比べます。integer と int、varchar と character varying のような別名は同じ型と見なさず、型の変更として表示します。
- 列の名前の変更は見分けられず、削除と追加として表示します(データを残すなら RENAME COLUMN を使います)。
- 主キー・UNIQUE・CHECK・外部キー・索引・DEFAULT の変更は差分に含めません。表の制約が違うときは情報で知らせます。
- 生成する SQL は参考の例です。USING 式・データの移行・ロックの影響は自動では考えません。
ご利用にあたって
- 生成する ALTER TABLE は参考の例です。本番で実行する前に、バックアップと検証環境での確認を必ず行ってください。
- ドキュメントは PostgreSQL License で公開されています。このサイトはその内容を要約して参照しており、転載はしていません。