Derbydb列のデータ型を変更しようとしています。現在の価格列はDECIMAL(5,0)として設定されています。 DECIMAL(7,2)に変更したいと思います。これは私がしました :
alter table item alter column price set data type DECIMAL(7,2);
しかし、それは機能せず、エラーを示しています:
Error: Only columns of type VARCHAR may have their length altered.
どうすれば変更できるのでしょうか?ありがとうございました。
列MY_TABLE.MY_COLUMNをBLOB(255)からBLOB(2147483647)に変更するDerbySQLスクリプトは次のとおりです。
ALTER TABLE MY_TABLE ADD COLUMN NEW_COLUMN BLOB(2147483647);
UPDATE MY_TABLE SET NEW_COLUMN=MY_COLUMN;
ALTER TABLE MY_TABLE DROP COLUMN MY_COLUMN;
RENAME COLUMN MY_TABLE.NEW_COLUMN TO MY_COLUMN;
私はあなたがこのようにできると思います:
ALTER TABLE SCHEMA.TABLE ALTER "COLUMN-NAME" SET DATA TYPE VARCHAR(255);
(column-Name SET DATA TYPE VARCHAR(integer))
例としてのデータ型文字列...
この方法で列のデータ型を変更するには、もう少し複雑な方法があります。
少し多くのステップがありますが、最終的には効果は同じになります。
これを行うためにSQLの正確な詳細を理解するのに問題がある場合は、お知らせください。サポートさせていただきます。
次のようにテーブルを変更できます。
ALTER TABLE [table] ALTER COLUMN [column] SET DATA TYPE [type];
または、Rails
で、次を使用します。
change_column :table_name, :column_name, :integer