diff --git a/db/migrate/20110818212541_add_identifier_to_existing_invitations.rb b/db/migrate/20110818212541_add_identifier_to_existing_invitations.rb
new file mode 100644
index 0000000000000000000000000000000000000000..1471552fc30ae6ff16ae841bbad229158d6b9597
--- /dev/null
+++ b/db/migrate/20110818212541_add_identifier_to_existing_invitations.rb
@@ -0,0 +1,19 @@
+class AddIdentifierToExistingInvitations < ActiveRecord::Migration
+  def self.up
+    execute <<SQL
+    UPDATE invitations
+      SET invitations.identifier = (SELECT users.invitation_identifier  FROM users WHERE users.id = invitations.recipient_id),
+          invitations.service = (SELECT users.invitation_service FROM users WHERE users.id = invitations.recipient_id)
+      WHERE invitations.identifier IS NULL
+SQL
+  end
+
+  def self.down
+    execute <<SQL
+    UPDATE invitations
+      SET invitations.identifier = NULL,
+          invitations.service = NULL
+      WHERE (SELECT users.invitation_identifier  FROM users WHERE users.id = invitations.recipient_id) IS NOT NULL
+SQL
+  end
+end
diff --git a/db/schema.rb b/db/schema.rb
index b94110f5fef438811b77020691b1e4341f7000ab..5f7edde5f5402cddc9ea2b7c9ec9db32ef3b882c 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -10,7 +10,7 @@
 #
 # It's strongly recommended to check this file into your version control system.
 
-ActiveRecord::Schema.define(:version => 20110816061820) do
+ActiveRecord::Schema.define(:version => 20110818212541) do
 
   create_table "aspect_memberships", :force => true do |t|
     t.integer  "aspect_id",  :null => false