From 4506a463e4af0c7b8fb7fddea1c666520d895271 Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Fri, 4 Nov 2005 06:01:03 +0000 Subject: [PATCH] Omit internal dtproperties table from SQLServer table list. Closes #2729. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2869 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- activerecord/CHANGELOG | 2 ++ .../connection_adapters/sqlserver_adapter.rb | 12 +++++++----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/activerecord/CHANGELOG b/activerecord/CHANGELOG index 1100c01b35..cc718dafdc 100644 --- a/activerecord/CHANGELOG +++ b/activerecord/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Omit internal dtproperties table from SQLServer table list. #2729 [rtomayko@gmail.com] + * Quote column names in generated SQL. #2728 [rtomayko@gmail.com] * Correct the pure-Ruby MySQL 4.1.1 shim's version test. #2718 [Jeremy Kemper] diff --git a/activerecord/lib/active_record/connection_adapters/sqlserver_adapter.rb b/activerecord/lib/active_record/connection_adapters/sqlserver_adapter.rb index 7b0a994b46..fa9ec97794 100644 --- a/activerecord/lib/active_record/connection_adapters/sqlserver_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/sqlserver_adapter.rb @@ -354,13 +354,15 @@ module ActiveRecord def create_database(name) execute "CREATE DATABASE #{name}" end - + def tables(name = nil) - tables = [] - execute("SELECT table_name from information_schema.tables WHERE table_type = 'BASE TABLE'", name).each {|field| tables << field[0]} - tables + execute("SELECT table_name from information_schema.tables WHERE table_type = 'BASE TABLE'", name).inject([]) do |tables, field| + table_name = field[0] + tables << table_name unless table_name == 'dtproperties' + tables + end end - + def indexes(table_name, name = nil) indexes = [] execute("EXEC sp_helpindex #{table_name}", name).each do |index|