cartodb/db/migrate/20160429180000_visualization_exports.rb
2020-06-15 10:58:47 +08:00

38 lines
1.4 KiB
Ruby

Sequel.migration do
up do
create_table :visualization_exports do
Uuid :id, primary_key: true, default: Sequel.lit('uuid_generate_v4()')
String :visualization_id, type: 'uuid', null: false
String :user_id, type: 'uuid', null: false
String :user_tables_ids, text: true
String :state, text: true, null: false, default: 'pending'
String :file, text: true
String :url, text: true
String :log_id, type: 'uuid', null: true
DateTime :created_at, default: Sequel::CURRENT_TIMESTAMP
DateTime :updated_at, default: Sequel::CURRENT_TIMESTAMP
end
# Note: add "NOT VALID" at the end of each FK if validation takes long.
SequelRails.connection.run(%{
ALTER TABLE visualization_exports
ADD CONSTRAINT visualization_exports_visualization_id_fkey FOREIGN KEY (visualization_id)
REFERENCES visualizations (id) ON DELETE CASCADE NOT VALID;
})
SequelRails.connection.run(%{
ALTER TABLE visualization_exports
ADD CONSTRAINT visualization_exports_user_id_fkey FOREIGN KEY (user_id)
REFERENCES users (id) ON DELETE CASCADE;
})
SequelRails.connection.run(%{
ALTER TABLE visualization_exports
ADD CONSTRAINT visualization_exports_log_id_fkey FOREIGN KEY (log_id)
REFERENCES logs (id) ON DELETE CASCADE;
})
end
down do
drop_table :visualization_exports
end
end