Sha256: 929f9ba0c87795339e93a7ed79adf1f00f074ce1e5f8dee7ded07dc96ffdeba7
Contents?: true
Size: 1.06 KB
Versions: 1
Compression:
Stored size: 1.06 KB
Contents
require File.expand_path("../example_setup", __FILE__) require "github/sql" class SomeModel < ActiveRecord::Base self.abstract_class = true establish_connection({ adapter: "mysql2", database: "github_ds_test", }) end ActiveRecord::Base.transaction do # Insert bar on base connection. GitHub::SQL.run <<-SQL, key: "bar", value: "baz", connection: ActiveRecord::Base.connection INSERT INTO example_key_values (`key`, `value`) VALUES (:key, :value) SQL SomeModel.transaction do # Insert foo on different connection. GitHub::SQL.run <<-SQL, key: "foo", value: "bar", connection: SomeModel.connection INSERT INTO example_key_values (`key`, `value`) VALUES (:key, :value) SQL end # Roll back "bar" insertion. raise ActiveRecord::Rollback end # Show that "bar" key is not here because that connection's transaction was # rolled back. SomeModel is a different connection and started a different # transaction, which succeeded, so "foo" key was created. p GitHub::SQL.values <<-SQL SELECT `key` FROM example_key_values SQL # ["foo"]
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
github-ds-0.2.0 | examples/sql_with_connection.rb |