odbc-rails 1.4 → 1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/ChangeLog CHANGED
@@ -1,3 +1,33 @@
1
+ 2008-04-23 15:11 source
2
+
3
+ * Updated version to 1.5 for final release
4
+
5
+ 2008-04-23 15:10 source
6
+
7
+ * Final documentation fixes
8
+
9
+ 2008-04-22 16:52 source
10
+
11
+ * Updated documentation
12
+
13
+ 2008-04-22 16:52 source
14
+
15
+ * Added support for dsnless connections
16
+
17
+ 2008-04-22 16:52 source
18
+
19
+ * Added initial support for SQL Anywhere
20
+
21
+ 2008-04-14 11:02 source
22
+
23
+ * Updated version number to 1.4.9
24
+
25
+ 2008-04-13 22:40 source
26
+
27
+ * Created maintenance branch for compatibility with Rails 1.2.5/
28
+ ActiveRecord 1.15.6.
29
+ * Removed plugin support for Rails 1.2.x.
30
+
1
31
  2007-02-27 15:28 source
2
32
 
3
33
  * Set version 1.4 for final release
data/NEWS CHANGED
@@ -1,3 +1,9 @@
1
+ April 23, 2008, V1.5:
2
+ * Amended configuration instructions for Rails 1.2.6 / ActiveRecord 1.15.6.
3
+ * Removed plugin support for Rails 1.2.x.
4
+ * Added support for DSN-less connections
5
+ * Added support for SQLAnywhere
6
+
1
7
  February 27, 2007, V1.4:
2
8
  * Changes for Rails 1.2.x / ActiveRecord 1.15.x
3
9
  * Added support for :decimal type
data/README CHANGED
@@ -5,6 +5,16 @@
5
5
 
6
6
  == Status
7
7
 
8
+ 23-Apr-2008
9
+
10
+ odbc-rails 1.5:
11
+ * Amended configuration instructions for Rails 1.2.6 / ActiveRecord 1.15.6.
12
+ * Removed plugin support for Rails 1.2.x.
13
+ * Added support for DSN-less connections (thanks to Ralf Vitasek).
14
+ * Added support for SQLAnywhere (thanks to Bryan Lahartinger).
15
+
16
+ For Rails 2.x / ActiveRecord 2.x, use odbc-rails 2.0.
17
+
8
18
  23-Feb-2007
9
19
 
10
20
  The adapter has been updated to support Rails 1.2.x / ActiveRecord 1.15.x.
@@ -99,10 +109,8 @@ be found in support/lib and support/test.
99
109
 
100
110
  == Installation
101
111
 
102
- There are 3 ways to install the ODBC Adapter package: either as a gem
103
- (recommended), a plugin, or by running the custom installation script. Pick
104
- one of the following, depending on whether you want the adapter to be
105
- available system-wide or just within a particular Rails project.
112
+ There are 2 ways to install the ODBC Adapter package: either as a gem
113
+ (recommended) or by running the custom installation script.
106
114
 
107
115
  === Installation as a Gem
108
116
 
@@ -110,58 +118,6 @@ Install the odbc-rails gem by running:
110
118
 
111
119
  # gem install -r odbc-rails --include-dependencies
112
120
 
113
- Enable loading of the adapter by editing your Rails project's
114
- config/environment.rb script:
115
-
116
- * Add a +require+ to your config/environment.rb immediately after the line
117
-
118
- require File.join(File.dirname(__FILE__), 'boot')
119
-
120
- i.e.
121
-
122
- require File.join(File.dirname(__FILE__), 'boot')
123
- require 'odbc_adapter'
124
-
125
-
126
- === Installation as a Plugin
127
-
128
- Installing the OpenLink ODBC Data Adapter as a plugin makes it available to
129
- a particular Rails application only.
130
-
131
- ==== Automatic Plugin installation
132
-
133
- The adapter can be automatically installed as a plugin by navigating to the
134
- root of your Rails application and typing either:
135
-
136
- script/plugin install odbc-rails
137
- or
138
- script/plugin install http://odbc-rails.rubyforge.org/plugins/odbc-rails
139
-
140
- On Windows, replace <tt>script/plugin</tt> by <tt>ruby script/plugin</tt>.
141
- e.g. <tt>ruby script/plugin install odbc-rails</tt>
142
-
143
-
144
- ==== Manual Plugin Installation
145
-
146
- You can also install the plugin manually by unpacking the sources into the
147
- vendor/plugins directory of your Rails application. If you use this method,
148
- you must run install.rb immediately afterwards. This need only be done once.
149
-
150
- install.rb modifies your application's config/environment.rb file, adding a
151
- line to ensure that the database adapter plugin is initialized before
152
- ActiveRecord. i.e.
153
-
154
- require File.join(File.dirname(__FILE__), 'boot')
155
-
156
- # Added by OpenLink ODBC Adapter (odbc-rails) plugin
157
- Rails::Initializer.run(:load_plugins)
158
-
159
- Rails::Initializer.run do |config|
160
-
161
- Without this change, Rails attempts to initialize ActiveRecord before it loads
162
- any plugins, causing an AdapterNotFound error. install.rb saves a copy of
163
- environment.rb before making any changes.
164
-
165
121
  === Custom installation script
166
122
 
167
123
  When using <tt>rake install</tt> or running the install_odbc.rb script by
@@ -229,8 +185,7 @@ steps yourself.
229
185
 
230
186
  This step is only necessary if the adapter was installed either as a gem or
231
187
  by copying files into your Rails core manually. It is not required if the
232
- adapter was installed as a plugin, using <tt>rake install</tt> or using
233
- install_odbc.rb.
188
+ adapter was installed using <tt>rake install</tt> or using install_odbc.rb.
234
189
 
235
190
  There are two ways to enable loading of the adapter:
236
191
 
@@ -247,19 +202,16 @@ There are two ways to enable loading of the adapter:
247
202
 
248
203
  *or*
249
204
 
250
- 2. Modify your Rails application's configuration to <tt>require</tt> the
251
- adapter:
252
-
205
+ 2. Modify your Rails application's configuration:
253
206
 
254
- * Add a <tt>require</tt> to your config/environment.rb immediately after
255
- the line
207
+ * Define RAILS_CONNECTION_ADAPTERS in your config/environment.rb immediately after the line
256
208
 
257
209
  require File.join(File.dirname(__FILE__), 'boot')
258
210
 
259
211
  i.e.
260
212
 
261
213
  require File.join(File.dirname(__FILE__), 'boot')
262
- require 'odbc_adapter'
214
+ RAILS_CONNECTION_ADAPTERS = %w( odbc )
263
215
 
264
216
  == Configuring the Adapter
265
217
 
@@ -1,5 +1,5 @@
1
1
  #
2
- # $Id: odbc_adapter.rb,v 1.5 2007/02/27 12:53:51 source Exp $
2
+ # $Id: odbc_adapter.rb,v 1.5.2.2 2008/04/23 15:10:47 source Exp $
3
3
  #
4
4
  # OpenLink ODBC Adapter for Ruby on Rails
5
5
  # Copyright (C) 2006 OpenLink Software
@@ -36,21 +36,48 @@ begin
36
36
  config = config.symbolize_keys
37
37
  if config.has_key?(:dsn)
38
38
  dsn = config[:dsn]
39
+ username = config[:username] ? config[:username].to_s : nil
40
+ password = config[:password] ? config[:password].to_s : nil
41
+ elsif config.has_key?(:conn_str)
42
+ connstr = config[:conn_str]
39
43
  else
40
- raise ActiveRecordError, "No data source name (DSN) specified."
44
+ raise ActiveRecordError, "No data source name (:dsn) or connection string (:conn_str) specified."
41
45
  end
42
- username = config[:username] ? config[:username].to_s : nil
43
- password = config[:password] ? config[:password].to_s : nil
44
- trace = config[:trace].nil? ? false : config[:trace]
45
- conv_num_lits = config[:convert_numeric_literals].nil? ? false : config[:convert_numeric_literals]
46
- emulate_bools = config[:emulate_booleans].nil? ? false : config[:emulate_booleans]
46
+
47
+ trace = config[:trace] || false
48
+ conv_num_lits = config[:convert_numeric_literals] || false
49
+ emulate_bools = config[:emulate_booleans] || false
47
50
 
48
- conn = ODBC::connect(dsn, username, password)
51
+ if config.has_key?(:dsn)
52
+ # Connect using dsn, username, password
53
+ conn = ODBC::connect(dsn, username, password)
54
+ conn_opts = {
55
+ :dsn => dsn, :username => username, :password => password,
56
+ :trace => trace, :conv_num_lits => conv_num_lits,
57
+ :emulate_booleans => emulate_bools
58
+ }
59
+ else
60
+ # Connect using ODBC connection string
61
+ # - supports DSN-based or DSN-less connections
62
+ # e.g. "DSN=virt5;UID=rails;PWD=rails"
63
+ # "DRIVER={OpenLink Virtuoso};HOST=carlmbp;UID=rails;PWD=rails"
64
+ connstr_keyval_pairs = connstr.split(';')
65
+ driver = ODBC::Driver.new
66
+ driver.name = 'odbc'
67
+ driver.attrs = {}
68
+ connstr_keyval_pairs.each do |pair|
69
+ attr = pair.split('=')
70
+ driver.attrs[attr[0]] = attr[1] if attr.length.eql?(2)
71
+ end
72
+ conn = ODBC::Database.new.drvconnect(driver)
73
+ conn_opts = {
74
+ :conn_str => config[:conn_str], :driver => driver,
75
+ :trace => trace, :conv_num_lits => conv_num_lits,
76
+ :emulate_booleans => emulate_bools
77
+ }
78
+ end
49
79
  conn.autocommit = true
50
-
51
- ConnectionAdapters::ODBCAdapter.new(conn, {:dsn => dsn, :username => username,
52
- :password => password, :trace => trace, :conv_num_lits => conv_num_lits,
53
- :emulate_booleans => emulate_bools}, logger)
80
+ ConnectionAdapters::ODBCAdapter.new(conn, conn_opts, logger)
54
81
  end
55
82
  end # class Base
56
83
 
@@ -63,6 +90,11 @@ begin
63
90
  #
64
91
  # == Status
65
92
  #
93
+ # === 23-Apr-2008
94
+ #
95
+ # Added support for DSN-less connections (thanks to Ralf Vitasek).
96
+ # Added support for SQLAnywhere (thanks to Bryan Lahartinger).
97
+ #
66
98
  # === 27-Feb-2007
67
99
  #
68
100
  # Adapter updated to support Rails 1.2.x / ActiveRecord 1.15.x.
@@ -112,6 +144,14 @@ begin
112
144
  # Specifies the database user.
113
145
  # <tt>:password</tt>::
114
146
  # Specifies the database password.
147
+ # <tt>:conn_str</tt>::
148
+ # Specifies an ODBC-style connection string.
149
+ # e.g.
150
+ # "DSN=virt5;UID=rails;PWD=rails" or
151
+ # "DRIVER={OpenLink Virtuoso};HOST=carlmbp;UID=rails;PWD=rails"
152
+ # Use either a) :dsn, :username and :password or b) :conn_str
153
+ # The :conn_str option in combination with the DRIVER keyword
154
+ # supports DSN-less connections.
115
155
  # <tt>:trace</tt>::
116
156
  # If set to <tt>true</tt>, turns on simple call tracing to the log file
117
157
  # referenced by ActiveRecord::Base.logger. If omitted, <tt>:trace</tt>
@@ -334,6 +374,15 @@ begin
334
374
  :boolean_col_surrogate => nil
335
375
  }
336
376
  },
377
+ :sqlanywhere => {
378
+ :any_version => {
379
+ :primary_key => "INTEGER PRIMARY KEY DEFAULT AUTOINCREMENT",
380
+ :has_autoincrement_col => true,
381
+ :supports_migrations => true,
382
+ :supports_schema_names => true,
383
+ :supports_count_distinct => true,
384
+ :boolean_col_surrogate => "TINYINT" }
385
+ },
337
386
  :virtuoso => {
338
387
  :any_version => {
339
388
  :primary_key => "INT NOT NULL IDENTITY PRIMARY KEY",
@@ -527,7 +576,13 @@ begin
527
576
  def reconnect!
528
577
  @logger.unknown("ODBCAdapter#reconnect!>") if @@trace
529
578
  @connection.disconnect if @connection.connected?
530
- @connection = ODBC::connect(*@connection_options)
579
+ if @connection_options.has_key?(:dsn)
580
+ @connection = ODBC::connect(@connection_options[:dsn],
581
+ @connection_options[:username],
582
+ @connection_options[:password])
583
+ else
584
+ @connection = ODBC::Database.new.drvconnect(@connection_options[:driver])
585
+ end
531
586
  # There's no need to refresh the data source info in @dsInfo because
532
587
  # we're reconnecting to the same data source.
533
588
  rescue Exception => e
@@ -1483,6 +1538,8 @@ begin
1483
1538
  symbl = :sybase
1484
1539
  elsif dbmsName =~ /virtuoso/i
1485
1540
  symbl = :virtuoso
1541
+ elsif dbmsName =~ /SQLAnywhere/i
1542
+ symbl = :sqlanywhere
1486
1543
  else
1487
1544
  raise ActiveRecord::ActiveRecordError, "ODBCAdapter: Unsupported database (#{dbmsName})"
1488
1545
  end
@@ -0,0 +1,115 @@
1
+ #
2
+ # $Id: odbcext_sqlanywhere.rb,v 1.1.2.1 2008/04/22 16:52:04 source Exp $
3
+ #
4
+ # OpenLink ODBC Adapter for Ruby on Rails
5
+ # Copyright (C) 2006 OpenLink Software
6
+ #
7
+ # Permission is hereby granted, free of charge, to any person obtaining
8
+ # a copy of this software and associated documentation files (the
9
+ # "Software"), to deal in the Software without restriction, including
10
+ # without limitation the rights to use, copy, modify, merge, publish,
11
+ # distribute, sublicense, and/or sell copies of the Software, and to
12
+ # permit persons to whom the Software is furnished to do so, subject
13
+ # to the following conditions:
14
+ #
15
+ # The above copyright notice and this permission notice shall be
16
+ # included in all copies or substantial portions of the Software.
17
+ #
18
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19
+ # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20
+ # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21
+ # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
22
+ # ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
23
+ # CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
24
+ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25
+ #
26
+
27
+ module ODBCExt
28
+
29
+ # ------------------------------------------------------------------------
30
+ # Mandatory methods
31
+ #
32
+
33
+ # #last_insert_id must be implemented for any database which returns
34
+ # false from #prefetch_primary_key?
35
+ def last_insert_id(table, sequence_name, stmt = nil)
36
+ @logger.unknown("ODBCAdapter#last_insert_id>") if @trace
37
+ select_value("select @@IDENTITY", 'last_insert_id')
38
+ end
39
+
40
+ # ------------------------------------------------------------------------
41
+ # Optional methods
42
+ #
43
+ # These are supplied for a DBMS only if necessary.
44
+ # ODBCAdapter tests for optional methods using Object#respond_to?
45
+
46
+ # Pre action for ODBCAdapter#insert
47
+ def pre_insert(sql, name, pk, id_value, sequence_name)
48
+ @iiTable = get_table_name(sql)
49
+ @iiCol = get_autounique_column(@iiTable)
50
+ @iiEnabled = false
51
+
52
+ if @iiCol != nil
53
+ if query_contains_autounique_col(sql, @iiCol)
54
+ begin
55
+ @connection.do(enable_identity_insert(@iiTable, true))
56
+ @iiEnabled = true
57
+ rescue Exception => e
58
+ raise ActiveRecordError, "IDENTITY_INSERT could not be turned on"
59
+ end
60
+ end
61
+ end
62
+ end
63
+
64
+ # Post action for ODBCAdapter#insert
65
+ def post_insert(sql, name, pk, id_value, sequence_name)
66
+ if @iiEnabled
67
+ begin
68
+ @connection.do(enable_identity_insert(@iiTable, false))
69
+ rescue Exception => e
70
+ raise ActiveRecordError, "IDENTITY_INSERT could not be turned off"
71
+ end
72
+ end
73
+ end
74
+
75
+ # ------------------------------------------------------------------------
76
+ # Method redefinitions
77
+ #
78
+ # DBMS specific methods which override the default implementation
79
+ # provided by the ODBCAdapter core.
80
+
81
+ def get_table_name(sql)
82
+ if sql =~ /^\s*insert\s+into\s+([^\(\s]+)\s*|^\s*update\s+([^\(\s]+)\s*/i
83
+ $1
84
+ elsif sql =~ /from\s+([^\(\s]+)\s*/i
85
+ $1
86
+ else
87
+ nil
88
+ end end
89
+
90
+ def get_autounique_column(table_name)
91
+ @table_columns = {} unless @table_columns
92
+ @table_columns[table_name] = columns(table_name) if @table_columns[table_name] == nil
93
+ @table_columns[table_name].each do |col|
94
+ return col.name if col.auto_unique?
95
+ end
96
+
97
+ return nil
98
+ end
99
+
100
+ def query_contains_autounique_col(sql, col)
101
+ sql =~ /(\[#{col}\])|("#{col}")/
102
+ end
103
+
104
+ def enable_identity_insert(table_name, enable = true)
105
+ if has_autounique_column(table_name)
106
+ "SET IDENTITY_INSERT #{table_name} #{enable ? 'ON' : 'OFF'}"
107
+ end
108
+ end
109
+
110
+ def has_autounique_column(table_name)
111
+ !get_autounique_column(table_name).nil?
112
+ end
113
+
114
+
115
+ end # module
@@ -0,0 +1,49 @@
1
+ #
2
+ # $Id: odbcext_sqlanywhere_col.rb,v 1.1.2.1 2008/04/22 16:52:04 source Exp $
3
+ #
4
+ # OpenLink ODBC Adapter for Ruby on Rails
5
+ # Copyright (C) 2006 OpenLink Software
6
+ #
7
+ # Permission is hereby granted, free of charge, to any person obtaining
8
+ # a copy of this software and associated documentation files (the
9
+ # "Software"), to deal in the Software without restriction, including
10
+ # without limitation the rights to use, copy, modify, merge, publish,
11
+ # distribute, sublicense, and/or sell copies of the Software, and to
12
+ # permit persons to whom the Software is furnished to do so, subject
13
+ # to the following conditions:
14
+ #
15
+ # The above copyright notice and this permission notice shall be
16
+ # included in all copies or substantial portions of the Software.
17
+ #
18
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19
+ # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20
+ # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21
+ # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
22
+ # ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
23
+ # CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
24
+ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25
+ #
26
+
27
+ module ODBCColumnExt
28
+
29
+ # Is the column a numeric autoincrementing column?
30
+ def auto_unique?
31
+ @autounique
32
+ end
33
+
34
+ private
35
+
36
+ def autoUnique?
37
+ @nativeType =~ /\bidentity\b/i
38
+ end
39
+
40
+ #private
41
+
42
+ def default_preprocess(nativeType, default)
43
+ return default if default.nil?
44
+ default.replace($2.strip) if default =~ /(DEFAULT +)(.*)/i
45
+ default.replace($1) if default =~ /^'(.*)'$/
46
+ default
47
+ end
48
+
49
+ end # module
@@ -1,5 +1,5 @@
1
1
  #
2
- # $Id: connection.rb,v 1.5 2007/02/27 11:00:49 source Exp $
2
+ # $Id: connection.rb,v 1.5.2.1 2008/04/22 16:52:36 source Exp $
3
3
  #
4
4
  # OpenLink ODBC Adapter for Ruby on Rails
5
5
  # Copyright (C) 2006 OpenLink Software
@@ -56,6 +56,29 @@ ActiveRecord::Base.configurations = {
56
56
  ActiveRecord::Base.establish_connection 'arunit'
57
57
  Course.establish_connection 'arunit2'
58
58
 
59
+ ###########################################
60
+ # Using DSN-less connection
61
+
62
+ =begin
63
+ ActiveRecord::Base.configurations = {
64
+ 'arunit' => {
65
+ :adapter => "odbc",
66
+ :conn_str => "Driver={OpenLink Lite for MySQL [6.0]};Database=rails_testdb1;Port=3306;UID=myuid;PWD=mypwd;"
67
+ :emulate_booleans => true,
68
+ :trace => false
69
+ },
70
+ 'arunit2' => {
71
+ :adapter => "odbc",
72
+ :conn_str => "Driver={OpenLink Lite for MySQL [6.0]};Database=rails_testdb2;Port=3306;UID=myuid;PWD=mypwd;"
73
+ :emulate_booleans => true,
74
+ :trace => false
75
+ }
76
+ }
77
+
78
+ ActiveRecord::Base.establish_connection 'arunit'
79
+ Course.establish_connection 'arunit2'
80
+ =end
81
+
59
82
  ###########################################
60
83
  # Using DB2
61
84
 
metadata CHANGED
@@ -1,121 +1,131 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.0
3
- specification_version: 1
4
2
  name: odbc-rails
5
3
  version: !ruby/object:Gem::Version
6
- version: "1.4"
7
- date: 2007-02-27 00:00:00 +01:00
8
- summary: ODBC Data Adapter for ActiveRecord.
9
- require_paths:
10
- - lib
11
- email: cblakeley@openlinksw.co.uk
12
- homepage: http://odbc-rails.rubyforge.org
13
- rubyforge_project:
14
- description:
15
- autorequire: odbc_adapter
16
- default_executable:
17
- bindir: bin
18
- has_rdoc: true
19
- required_ruby_version: !ruby/object:Gem::Version::Requirement
20
- requirements:
21
- - - ">"
22
- - !ruby/object:Gem::Version
23
- version: 0.0.0
24
- version:
4
+ version: "1.5"
25
5
  platform: ruby
26
- signing_key:
27
- cert_chain:
28
- post_install_message:
29
6
  authors:
30
7
  - Carl Blakeley
8
+ autorequire: odbc_adapter
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-04-23 00:00:00 +02:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: activerecord
17
+ version_requirement:
18
+ version_requirements: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 1.15.6
23
+ - - <
24
+ - !ruby/object:Gem::Version
25
+ version: "2.0"
26
+ version:
27
+ description:
28
+ email: cblakeley@openlinksw.co.uk
29
+ executables: []
30
+
31
+ extensions: []
32
+
33
+ extra_rdoc_files:
34
+ - README
35
+ - COPYING
31
36
  files:
37
+ - lib/connection_adapters
32
38
  - lib/active_record
33
- - lib/odbc_adapter.rb
34
39
  - lib/active_record/connection_adapters
35
- - lib/active_record/vendor
36
40
  - lib/active_record/connection_adapters/odbc_adapter.rb
37
- - lib/active_record/vendor/odbcext_db2.rb
41
+ - lib/active_record/vendor
42
+ - lib/active_record/vendor/odbcext_oracle.rb
38
43
  - lib/active_record/vendor/odbcext_informix.rb
39
- - lib/active_record/vendor/odbcext_informix_col.rb
40
- - lib/active_record/vendor/odbcext_ingres.rb
41
- - lib/active_record/vendor/odbcext_microsoftsqlserver.rb
44
+ - lib/active_record/vendor/odbcext_progress89.rb
42
45
  - lib/active_record/vendor/odbcext_microsoftsqlserver_col.rb
43
- - lib/active_record/vendor/odbcext_mysql.rb
44
- - lib/active_record/vendor/odbcext_oracle.rb
46
+ - lib/active_record/vendor/odbcext_informix_col.rb
47
+ - lib/active_record/vendor/odbcext_sqlanywhere.rb
45
48
  - lib/active_record/vendor/odbcext_postgresql.rb
46
- - lib/active_record/vendor/odbcext_progress.rb
47
- - lib/active_record/vendor/odbcext_progress89.rb
48
- - lib/active_record/vendor/odbcext_sybase.rb
49
49
  - lib/active_record/vendor/odbcext_sybase_col.rb
50
+ - lib/active_record/vendor/odbcext_mysql.rb
51
+ - lib/active_record/vendor/odbcext_db2.rb
52
+ - lib/active_record/vendor/odbcext_progress.rb
53
+ - lib/active_record/vendor/odbcext_microsoftsqlserver.rb
54
+ - lib/active_record/vendor/odbcext_ingres.rb
55
+ - lib/active_record/vendor/odbcext_sqlanywhere_col.rb
50
56
  - lib/active_record/vendor/odbcext_virtuoso.rb
57
+ - lib/active_record/vendor/odbcext_sybase.rb
58
+ - lib/vendor
59
+ - lib/odbc_adapter.rb
51
60
  - test/connections
52
- - test/fixtures
53
61
  - test/connections/native_odbc
54
62
  - test/connections/native_odbc/connection.rb
63
+ - test/fixtures
55
64
  - test/fixtures/db_definitions
56
- - test/fixtures/db_definitions/db2.drop.sql
57
- - test/fixtures/db_definitions/db2.sql
58
65
  - test/fixtures/db_definitions/db22.drop.sql
59
- - test/fixtures/db_definitions/db22.sql
60
- - test/fixtures/db_definitions/informix.drop.sql
61
- - test/fixtures/db_definitions/informix.sql
62
- - test/fixtures/db_definitions/informix2.drop.sql
63
- - test/fixtures/db_definitions/informix2.sql
64
- - test/fixtures/db_definitions/ingres.drop.sql
65
- - test/fixtures/db_definitions/ingres.sql
66
- - test/fixtures/db_definitions/ingres2.drop.sql
66
+ - test/fixtures/db_definitions/progress2.drop.sql
67
67
  - test/fixtures/db_definitions/ingres2.sql
68
- - test/fixtures/db_definitions/mysql.drop.sql
69
- - test/fixtures/db_definitions/mysql.sql
70
- - test/fixtures/db_definitions/mysql2.drop.sql
71
- - test/fixtures/db_definitions/mysql2.sql
72
68
  - test/fixtures/db_definitions/oracle_odbc.drop.sql
73
- - test/fixtures/db_definitions/oracle_odbc.sql
74
- - test/fixtures/db_definitions/oracle_odbc2.drop.sql
75
- - test/fixtures/db_definitions/oracle_odbc2.sql
76
- - test/fixtures/db_definitions/postgresql.drop.sql
77
- - test/fixtures/db_definitions/postgresql.sql
78
- - test/fixtures/db_definitions/postgresql2.drop.sql
69
+ - test/fixtures/db_definitions/mysql2.sql
70
+ - test/fixtures/db_definitions/virtuoso.sql
71
+ - test/fixtures/db_definitions/virtuoso2.drop.sql
79
72
  - test/fixtures/db_definitions/postgresql2.sql
80
- - test/fixtures/db_definitions/progress.drop.sql
81
- - test/fixtures/db_definitions/progress.sql
82
- - test/fixtures/db_definitions/progress2.drop.sql
73
+ - test/fixtures/db_definitions/db2.drop.sql
74
+ - test/fixtures/db_definitions/informix2.sql
75
+ - test/fixtures/db_definitions/postgresql2.drop.sql
83
76
  - test/fixtures/db_definitions/progress2.sql
77
+ - test/fixtures/db_definitions/mysql.drop.sql
78
+ - test/fixtures/db_definitions/sybase2.sql
79
+ - test/fixtures/db_definitions/sybase.sql
80
+ - test/fixtures/db_definitions/mysql.sql
81
+ - test/fixtures/db_definitions/sqlserver2.sql
82
+ - test/fixtures/db_definitions/oracle_odbc2.drop.sql
84
83
  - test/fixtures/db_definitions/sqlserver.drop.sql
84
+ - test/fixtures/db_definitions/virtuoso2.sql
85
+ - test/fixtures/db_definitions/db2.sql
86
+ - test/fixtures/db_definitions/ingres.sql
87
+ - test/fixtures/db_definitions/oracle_odbc.sql
88
+ - test/fixtures/db_definitions/progress.drop.sql
85
89
  - test/fixtures/db_definitions/sqlserver.sql
86
- - test/fixtures/db_definitions/sqlserver2.drop.sql
87
- - test/fixtures/db_definitions/sqlserver2.sql
88
90
  - test/fixtures/db_definitions/sybase.drop.sql
89
- - test/fixtures/db_definitions/sybase.sql
90
- - test/fixtures/db_definitions/sybase2.drop.sql
91
- - test/fixtures/db_definitions/sybase2.sql
91
+ - test/fixtures/db_definitions/postgresql.sql
92
+ - test/fixtures/db_definitions/informix2.drop.sql
93
+ - test/fixtures/db_definitions/mysql2.drop.sql
94
+ - test/fixtures/db_definitions/progress.sql
95
+ - test/fixtures/db_definitions/sqlserver2.drop.sql
92
96
  - test/fixtures/db_definitions/virtuoso.drop.sql
93
- - test/fixtures/db_definitions/virtuoso.sql
94
- - test/fixtures/db_definitions/virtuoso2.drop.sql
95
- - test/fixtures/db_definitions/virtuoso2.sql
96
- - support/lib
97
- - support/odbc_rails.diff
97
+ - test/fixtures/db_definitions/informix.drop.sql
98
+ - test/fixtures/db_definitions/db22.sql
99
+ - test/fixtures/db_definitions/sybase2.drop.sql
100
+ - test/fixtures/db_definitions/informix.sql
101
+ - test/fixtures/db_definitions/postgresql.drop.sql
102
+ - test/fixtures/db_definitions/ingres2.drop.sql
103
+ - test/fixtures/db_definitions/oracle_odbc2.sql
104
+ - test/fixtures/db_definitions/ingres.drop.sql
98
105
  - support/pack_odbc.rb
99
- - support/rake
100
- - support/rake_fixes
101
- - support/test
106
+ - support/odbc_rails.diff
107
+ - support/lib
102
108
  - support/lib/active_record
103
109
  - support/lib/active_record/connection_adapters
104
110
  - support/lib/active_record/connection_adapters/abstract
105
111
  - support/lib/active_record/connection_adapters/abstract/schema_definitions.rb
106
- - support/rake/rails_plugin_package_task.rb
112
+ - support/rake_fixes
107
113
  - support/rake_fixes/databases.dif
108
114
  - support/rake_fixes/README
109
- - support/test/base_test.rb
115
+ - support/rake
116
+ - support/rake/rails_plugin_package_task.rb
117
+ - support/test
110
118
  - support/test/migration_test.rb
119
+ - support/test/base_test.rb
111
120
  - AUTHORS
112
121
  - ChangeLog
113
122
  - COPYING
114
123
  - LICENSE
115
124
  - NEWS
116
125
  - README
117
- test_files: []
118
-
126
+ has_rdoc: true
127
+ homepage: http://odbc-rails.rubyforge.org
128
+ post_install_message:
119
129
  rdoc_options:
120
130
  - --title
121
131
  - OpenLink ODBC Adapter for Ruby on Rails
@@ -135,22 +145,26 @@ rdoc_options:
135
145
  - test
136
146
  - --include
137
147
  - active_record/connection_adapters/*.rb
138
- extra_rdoc_files:
139
- - README
140
- - COPYING
141
- executables: []
142
-
143
- extensions: []
144
-
148
+ require_paths:
149
+ - lib
150
+ required_ruby_version: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - ">="
153
+ - !ruby/object:Gem::Version
154
+ version: "0"
155
+ version:
156
+ required_rubygems_version: !ruby/object:Gem::Requirement
157
+ requirements:
158
+ - - ">="
159
+ - !ruby/object:Gem::Version
160
+ version: "0"
161
+ version:
145
162
  requirements: []
146
163
 
147
- dependencies:
148
- - !ruby/object:Gem::Dependency
149
- name: activerecord
150
- version_requirement:
151
- version_requirements: !ruby/object:Gem::Version::Requirement
152
- requirements:
153
- - - ">="
154
- - !ruby/object:Gem::Version
155
- version: "1.15"
156
- version:
164
+ rubyforge_project:
165
+ rubygems_version: 1.1.1
166
+ signing_key:
167
+ specification_version: 2
168
+ summary: ODBC Data Adapter for ActiveRecord.
169
+ test_files: []
170
+