H:\Rails\hondana>ruby script\generate migration AddImgToBook exists db/migrate create db/migrate/002_add_img_to_book.rb
migrateを編集。
class AddImgToBook < ActiveRecord::Migration @cls = [ [:smallimage_url, :string], [:smallimage_height, :integer], [:smallimage_width, :integer], [:mediumimage_url, :string], [:mediumimage_height, :integer], [:mediumimage_width, :integer] ] def self.up @cls.each{|c| add_column :books, *c} end def self.down @cls.each{|c| remove_column :books, *c} end end
ちゃんとdownも書きました。
DB2でテーブル定義を確認する方法は・・・マニュアルによると、describeというコマンドが使えるみたい。
db2 => describe table db2admin.books タイプ・ 列名 スキーマ タイプ名 長さ 位取り NULL ------------------------------ --------- ------------------ -------- ----- ------ ID SYSIBM INTEGER 4 0 いいえ ISBN13 SYSIBM VARCHAR 255 0 はい STATUS SYSIBM INTEGER 4 0 はい TITLE SYSIBM VARCHAR 255 0 はい AUTHER SYSIBM VARCHAR 255 0 はい 5 レコードが選択されました。
rakeする
H:\Rails\hondana>rake db:migrate (in H:/Rails/hondana) == AddImgToBook: migrating ==================================================== -- add_column(:books, :smallimage_url, :string) -> 1.0310s -- add_column(:books, :smallimage_height, :integer) -> 0.0780s -- add_column(:books, :smallimage_width, :integer) -> 0.0160s -- add_column(:books, :mediumimage_url, :string) -> 0.0310s -- add_column(:books, :mediumimage_height, :integer) -> 0.0000s -- add_column(:books, :mediumimage_width, :integer) -> 0.0000s == AddImgToBook: migrated (1.1560s) ===========================================
確認
db2 => describe table db2admin.books タイプ・ 列名 スキーマ タイプ名 長さ 位取り NULL ------------------------------ --------- ------------------ -------- ----- ------ ID SYSIBM INTEGER 4 0 いいえ ISBN13 SYSIBM VARCHAR 255 0 はい STATUS SYSIBM INTEGER 4 0 はい TITLE SYSIBM VARCHAR 255 0 はい AUTHER SYSIBM VARCHAR 255 0 はい SMALLIMAGE_URL SYSIBM VARCHAR 255 0 はい SMALLIMAGE_HEIGHT SYSIBM INTEGER 4 0 はい SMALLIMAGE_WIDTH SYSIBM INTEGER 4 0 はい MEDIUMIMAGE_URL SYSIBM VARCHAR 255 0 はい MEDIUMIMAGE_HEIGHT SYSIBM INTEGER 4 0 はい MEDIUMIMAGE_WIDTH SYSIBM INTEGER 4 0 はい 11 レコードが選択されました。