読者です 読者をやめる 読者になる 読者になる

manatee-itの備忘ログ

プログラム初心者のブログ。ruby on railsでWebサービスを作成中。(仕事が忙しくなかななか進まず) つまずいた所をなんでも記録。 環境:Ruby2.1 + Rails4.1.1 + Passenger + CentOS6.4(Apache + sqlite/MySQL)

rails環境でテーブルにカラム追加

sqliteで、ALTER TABLEを実行すればカラムは追加できますが、マイグレーションファイルを使った方法で追加。

sqlite> .schema programs
CREATE TABLE "programs" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title" varchar(255), "created_at" datetime, "updated_at" datetime);

カラム追加のマイグレーションファイルを作成。
# rails g migration AddUidToPrograms uid:integer
invoke active_record
create db/migrate/20140605124613_add_uid_to_programs.rb

中身を確認
# cat db/migrate/20140605124613_add_uid_to_programs.rb
class AddUidToPrograms < ActiveRecord::Migration
def change
add_column :programs, :uid, :integer
end
end

# rake db:migrate
== 20140605124613 AddUidToPrograms: migrating =================================

    • add_column(:programs, :uid, :integer)

-> 0.0043s
== 20140605124613 AddUidToPrograms: migrated (0.0045s) ========================

sqlite> .schema programs
CREATE TABLE "programs" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title" varchar(255), "created_at" datetime, "updated_at" datetime, "uid" integer);