cmoran92-activerecord-jdbc-adapter 1.2.1 → 1.2.1.1
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/activerecord-jdbc-adapter.gemspec +1 -1
- data/lib/arjdbc/mssql/limit_helpers.rb +8 -3
- data/lib/arjdbc/version.rb +1 -1
- metadata +77 -6
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
|
|
12
12
|
s.summary = %q{JDBC adapter for ActiveRecord, for use within JRuby on Rails.}
|
13
13
|
s.description = %q{activerecord-jdbc-adapter is a database adapter for Rails\' ActiveRecord
|
14
14
|
component that can be used with JRuby[http://www.jruby.org/]. It allows use of
|
15
|
-
virtually any JDBC-compliant database with your JRuby on Rails application. Includes patch by cmoran92 to eliminate duplicates when SELECTing
|
15
|
+
virtually any JDBC-compliant database with your JRuby on Rails application. Includes patch by cmoran92 to eliminate duplicates when SELECTing DISTINCT with JOINS on MS SQL Server. }
|
16
16
|
s.files = `git ls-files`.split("\n").reject {|v| v =~ /^(activerecord-jdbc[^-]|jdbc-)/}
|
17
17
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
18
18
|
s.executables = `git ls-files -- bin/*`.split("\n").map{|f| File.basename(f) }
|
@@ -81,9 +81,14 @@ module ::ArJdbc
|
|
81
81
|
end
|
82
82
|
# We might want to add the condition that rest_of_query has at least one JOIN outside of signle quotes
|
83
83
|
if select =~ /DISTINCT/
|
84
|
-
|
85
|
-
new_sql = "SELECT
|
86
|
-
|
84
|
+
t_cols = rest_of_query.sub(/ FROM .*/, '').gsub(/\[?[A-Za-z0-9_]+\]?\./, 't.')
|
85
|
+
new_sql = "SELECT #{t_cols} FROM (
|
86
|
+
SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS _row_num, #{t_cols} FROM (
|
87
|
+
SELECT DISTINCT #{t_cols} FROM (
|
88
|
+
SELECT ROW_NUMBER() OVER(#{order}) AS _row_num, #{rest_of_query}
|
89
|
+
) AS t
|
90
|
+
) AS t
|
91
|
+
) AS t WHERE t._row_num BETWEEN #{start_row.to_s} AND #{end_row.to_s}"
|
87
92
|
else
|
88
93
|
new_sql = "#{select} t.* FROM (SELECT ROW_NUMBER() OVER(#{order}) AS _row_num, #{rest_of_query}"
|
89
94
|
new_sql << ") AS t WHERE t._row_num BETWEEN #{start_row.to_s} AND #{end_row.to_s}"
|
data/lib/arjdbc/version.rb
CHANGED
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: cmoran92-activerecord-jdbc-adapter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 1.2.1
|
5
|
+
version: 1.2.1.1
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Nick Sieger, Ola Bini and JRuby contributors
|
@@ -10,12 +10,13 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2012-
|
13
|
+
date: 2012-04-20 00:00:00 -04:00
|
14
|
+
default_executable:
|
14
15
|
dependencies: []
|
15
16
|
|
16
17
|
description: "activerecord-jdbc-adapter is a database adapter for Rails\\' ActiveRecord\n\
|
17
18
|
component that can be used with JRuby[http://www.jruby.org/]. It allows use of\n\
|
18
|
-
virtually any JDBC-compliant database with your JRuby on Rails application. Includes patch by cmoran92 to eliminate duplicates when SELECTing
|
19
|
+
virtually any JDBC-compliant database with your JRuby on Rails application. Includes patch by cmoran92 to eliminate duplicates when SELECTing DISTINCT with JOINS on MS SQL Server. "
|
19
20
|
email: nick@nicksieger.com, ola.bini@gmail.com
|
20
21
|
executables: []
|
21
22
|
|
@@ -226,6 +227,7 @@ files:
|
|
226
227
|
- test/simple.rb
|
227
228
|
- test/sqlite3_simple_test.rb
|
228
229
|
- test/sybase_jtds_simple_test.rb
|
230
|
+
has_rdoc: true
|
229
231
|
homepage: https://github.com/jruby/activerecord-jdbc-adapter
|
230
232
|
licenses: []
|
231
233
|
|
@@ -253,9 +255,78 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
253
255
|
requirements: []
|
254
256
|
|
255
257
|
rubyforge_project: jruby-extras
|
256
|
-
rubygems_version: 1.
|
258
|
+
rubygems_version: 1.5.1
|
257
259
|
signing_key:
|
258
260
|
specification_version: 3
|
259
261
|
summary: JDBC adapter for ActiveRecord, for use within JRuby on Rails.
|
260
|
-
test_files:
|
261
|
-
|
262
|
+
test_files:
|
263
|
+
- test/abstract_db_create.rb
|
264
|
+
- test/activerecord/connection_adapters/type_conversion_test.rb
|
265
|
+
- test/activerecord/connections/native_jdbc_mysql/connection.rb
|
266
|
+
- test/activerecord/jall.sh
|
267
|
+
- test/activerecord/jtest.sh
|
268
|
+
- test/db/db2.rb
|
269
|
+
- test/db/derby.rb
|
270
|
+
- test/db/h2.rb
|
271
|
+
- test/db/hsqldb.rb
|
272
|
+
- test/db/informix.rb
|
273
|
+
- test/db/jdbc.rb
|
274
|
+
- test/db/jndi_config.rb
|
275
|
+
- test/db/logger.rb
|
276
|
+
- test/db/mssql.rb
|
277
|
+
- test/db/mysql.rb
|
278
|
+
- test/db/oracle.rb
|
279
|
+
- test/db/postgres.rb
|
280
|
+
- test/db/sqlite3.rb
|
281
|
+
- test/db2_simple_test.rb
|
282
|
+
- test/derby_migration_test.rb
|
283
|
+
- test/derby_multibyte_test.rb
|
284
|
+
- test/derby_simple_test.rb
|
285
|
+
- test/generic_jdbc_connection_test.rb
|
286
|
+
- test/h2_change_column_test.rb
|
287
|
+
- test/h2_simple_test.rb
|
288
|
+
- test/has_many_through.rb
|
289
|
+
- test/helper.rb
|
290
|
+
- test/hsqldb_simple_test.rb
|
291
|
+
- test/informix_simple_test.rb
|
292
|
+
- test/jdbc_common.rb
|
293
|
+
- test/jndi_callbacks_test.rb
|
294
|
+
- test/jndi_test.rb
|
295
|
+
- test/manualTestDatabase.rb
|
296
|
+
- test/models/add_not_null_column_to_table.rb
|
297
|
+
- test/models/auto_id.rb
|
298
|
+
- test/models/data_types.rb
|
299
|
+
- test/models/entry.rb
|
300
|
+
- test/models/mixed_case.rb
|
301
|
+
- test/models/reserved_word.rb
|
302
|
+
- test/models/string_id.rb
|
303
|
+
- test/models/thing.rb
|
304
|
+
- test/models/validates_uniqueness_of_string.rb
|
305
|
+
- test/mssql_db_create_test.rb
|
306
|
+
- test/mssql_identity_insert_test.rb
|
307
|
+
- test/mssql_legacy_types_test.rb
|
308
|
+
- test/mssql_limit_offset_test.rb
|
309
|
+
- test/mssql_multibyte_test.rb
|
310
|
+
- test/mssql_simple_test.rb
|
311
|
+
- test/mysql_db_create_test.rb
|
312
|
+
- test/mysql_index_length_test.rb
|
313
|
+
- test/mysql_info_test.rb
|
314
|
+
- test/mysql_multibyte_test.rb
|
315
|
+
- test/mysql_nonstandard_primary_key_test.rb
|
316
|
+
- test/mysql_simple_test.rb
|
317
|
+
- test/oracle_simple_test.rb
|
318
|
+
- test/oracle_specific_test.rb
|
319
|
+
- test/postgres_db_create_test.rb
|
320
|
+
- test/postgres_drop_db_test.rb
|
321
|
+
- test/postgres_information_schema_leak_test.rb
|
322
|
+
- test/postgres_mixed_case_test.rb
|
323
|
+
- test/postgres_native_type_mapping_test.rb
|
324
|
+
- test/postgres_nonseq_pkey_test.rb
|
325
|
+
- test/postgres_reserved_test.rb
|
326
|
+
- test/postgres_schema_search_path_test.rb
|
327
|
+
- test/postgres_simple_test.rb
|
328
|
+
- test/postgres_table_alias_length_test.rb
|
329
|
+
- test/postgres_type_conversion_test.rb
|
330
|
+
- test/simple.rb
|
331
|
+
- test/sqlite3_simple_test.rb
|
332
|
+
- test/sybase_jtds_simple_test.rb
|