SQLに列を追加する

SQLに列を追加する

私は現在 SQL を学習中ですが、現在の質問は次のとおりです。SQL コードで列を追加するときに、add の後に「COLUMN」という単語を付けるのは悪い習慣でしょうか?

ALTER TABLE FICTION
add COLUMN Best_Seller CHAR;

それとも、こうする方が良いのでしょうか?

ALTER TABLE FICTION
add Best_Seller CHAR;

答え1

多くのSQLエンジンは両方の形式をサポートしています(SQLite、Postgre、MySQL、Oracle)が、一部のエンジン(特にMS SQL サーバー) は ADD のみをサポートします。つまり、ある意味では、ADD は ADD COLUMN よりも汎用性が高いと言えます。

  • どちらの形式も、Web 上のコード スニペットで頻繁に見られます。
  • ALTER TABLE 構文はエンジンごとに異なる傾向があるため、新しいエンジンでこれらのコマンドを初めて使用するときは、ドキュメントを参照するのが一般的です。
  • ADD COLUMN を使用すると、制約やインデックスなどではなく、列を追加しているという意図が一目でわかりやすくなります。
  • これらのステートメントは SELECT ステートメントや UPDATE ステートメントほど頻繁には記述されないため、入力の手間が省けるという理由だけで ADD を正当化するのは困難です。
  • 自分やデータベースを使用する他のユーザーにとってより読みやすい構文が見つかった場合、それも考慮に入れる必要があります。

これらの理由から、これは個人の好みの問題になるようです。しかし、SQL Server との非互換性を除けば、冗長性が増してもデメリットはなく、ADD COLUMN の方が明確だと感じています。

関連情報