0

ingres DB を更新するために PUTTY 経由で実行している SQL スクリプトがあります。

次のクエリでエラーが発生しています (Squirell SQL クライアントでは正常に動作します)。

ALTER TABLE address 
ALTER COLUMN address2 VARCHAR(100); \p\g

より多くの文字を許可するためにアドレス 2 列を変更しようとしているところ。

表示します

E_US0F0A 行 1、「ALTER COLUMN」の構文エラー。正しい構文は次のとおりです。

ALTER TABLE テーブル名 ADD [CONSTRAINT 制約名] 制約句 | DROP CONSTRAINT 制約名 RESTRICT | カスケード | ADD [COLUMN] columnname format [default_clause] [null_clause] [column_constraint] | DROP [COLUMN] column_name RESTRICT | カスケード

イングレスは追加またはドロップのみを許可しているようです。

4

1 に答える 1

0

これはコメントするには長すぎます。必要がある:

  1. 適切なタイプの新しい一時列を追加します。
  2. 一時列を古い値で更新します。
  3. 古い列を削除します。
  4. 正しい名前とタイプで新しい列を追加します。
  5. 一時列の値で新しい列を更新します。
  6. 一時列を削除します。

少し面倒です。

于 2015-10-15T02:34:16.933 に答える