Skip to content

Commit

Permalink
ACTIVERECORD_JDBC-143: Implement table_exists? fixing association tab…
Browse files Browse the repository at this point in the history
…le names with schema prefixes
  • Loading branch information
nicksieger committed Nov 29, 2010
1 parent e0239fd commit 50112a7
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 1 deletion.
5 changes: 4 additions & 1 deletion lib/arjdbc/jdbc/adapter.rb
Original file line number Diff line number Diff line change
Expand Up @@ -225,7 +225,6 @@ def insert_sql(sql, name = nil, pk = nil, id_value = nil, sequence_name = nil)
id_value || id
end


def jdbc_columns(table_name, name = nil)
@connection.columns(table_name.to_s)
end
Expand All @@ -235,6 +234,10 @@ def tables(name = nil)
@connection.tables
end

def table_exists?(name)
jdbc_columns(name) rescue nil
end

def indexes(table_name, name = nil, schema_name = nil)
@connection.indexes(table_name, name, schema_name)
end
Expand Down
13 changes: 13 additions & 0 deletions test/mysql_simple_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,19 @@ def test_table_name_quoting_with_dot
def test_update_all_with_limit
assert_nothing_raised { Entry.update_all({:title => "test"}, {}, {:limit => 1}) }
end

def test_find_in_other_schema_with_include
old_entries_table_name = Entry.table_name
old_users_table_name = User.table_name
begin
User.set_table_name 'weblog_development.users'
Entry.set_table_name 'weblog_development.entries'
assert !Entry.all(:include => :user).empty?
ensure
Entry.set_table_name old_entries_table_name
User.set_table_name old_users_table_name
end
end
end

class MysqlHasManyThroughTest < Test::Unit::TestCase
Expand Down

0 comments on commit 50112a7

Please sign in to comment.