ActiveRecord-JDBC 0.4 → 0.5
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +12 -0
- data/Manifest.txt +13 -0
- data/Rakefile +18 -10
- data/lib/active_record/connection_adapters/derby_adapter.rb +1 -0
- data/lib/active_record/connection_adapters/h2_adapter.rb +1 -0
- data/lib/active_record/connection_adapters/hsqldb_adapter.rb +1 -0
- data/lib/active_record/connection_adapters/jdbc_adapter.rb +124 -56
- data/lib/active_record/connection_adapters/jndi_adapter.rb +1 -0
- data/lib/active_record/connection_adapters/mysql_adapter.rb +1 -0
- data/lib/active_record/connection_adapters/oracle_adapter.rb +1 -0
- data/lib/active_record/connection_adapters/postgresql_adapter.rb +1 -0
- data/lib/jdbc_adapter/jdbc_db2.rb +21 -0
- data/lib/jdbc_adapter/jdbc_derby.rb +22 -101
- data/lib/jdbc_adapter/jdbc_firebird.rb +5 -1
- data/lib/jdbc_adapter/jdbc_hsqldb.rb +23 -1
- data/lib/jdbc_adapter/jdbc_mimer.rb +4 -2
- data/lib/jdbc_adapter/jdbc_mssql.rb +149 -67
- data/lib/jdbc_adapter/jdbc_mysql.rb +22 -2
- data/lib/jdbc_adapter/jdbc_oracle.rb +80 -15
- data/lib/jdbc_adapter/jdbc_postgre.rb +132 -4
- data/lib/jdbc_adapter_internal.jar +0 -0
- data/src/java/JDBCDerbySpec.java +323 -0
- data/src/java/JDBCMySQLSpec.java +83 -0
- data/src/java/JdbcAdapterInternalService.java +802 -0
- data/test/activerecord/connection_adapters/type_conversion_test.rb +1 -0
- data/test/db/derby.rb +2 -5
- data/test/db/h2.rb +2 -5
- data/test/db/hsqldb.rb +2 -6
- data/test/db/jdbc.rb +9 -0
- data/test/db/mysql.rb +4 -15
- data/test/db/postgres.rb +2 -3
- data/test/generic_jdbc_connection_test.rb +9 -0
- data/test/jdbc_adapter/jdbc_db2_test.rb +21 -0
- data/test/simple.rb +6 -8
- metadata +15 -2
data/test/db/derby.rb
CHANGED
@@ -1,11 +1,8 @@
|
|
1
1
|
require 'logger'
|
2
2
|
|
3
3
|
config = {
|
4
|
-
:adapter => '
|
5
|
-
:
|
6
|
-
:password => '',
|
7
|
-
:driver => 'org.apache.derby.jdbc.EmbeddedDriver',
|
8
|
-
:url => 'jdbc:derby:derby-testdb;create=true'
|
4
|
+
:adapter => 'derby',
|
5
|
+
:database => "derby-testdb"
|
9
6
|
}
|
10
7
|
|
11
8
|
ActiveRecord::Base.establish_connection(config)
|
data/test/db/h2.rb
CHANGED
data/test/db/hsqldb.rb
CHANGED
@@ -1,10 +1,6 @@
|
|
1
1
|
config = {
|
2
|
-
:adapter => '
|
3
|
-
:
|
4
|
-
:password => '',
|
5
|
-
:driver => 'org.hsqldb.jdbcDriver',
|
6
|
-
:url => 'jdbc:hsqldb:test.db'
|
7
|
-
#:url => 'jdbc:hsqldb:mem:test'
|
2
|
+
:adapter => 'hsqldb',
|
3
|
+
:database => 'test.db'
|
8
4
|
}
|
9
5
|
|
10
6
|
ActiveRecord::Base.establish_connection(config)
|
data/test/db/jdbc.rb
ADDED
data/test/db/mysql.rb
CHANGED
@@ -1,20 +1,9 @@
|
|
1
1
|
config = {
|
2
2
|
:username => 'blog',
|
3
|
-
:password => ''
|
3
|
+
:password => '',
|
4
|
+
:adapter => 'mysql',
|
5
|
+
:database => 'weblog_development',
|
6
|
+
:host => 'localhost'
|
4
7
|
}
|
5
8
|
|
6
|
-
if RUBY_PLATFORM =~ /java/
|
7
|
-
config.update({
|
8
|
-
:adapter => 'jdbc',
|
9
|
-
:driver => 'com.mysql.jdbc.Driver',
|
10
|
-
:url => 'jdbc:mysql://localhost:3306/weblog_development',
|
11
|
-
})
|
12
|
-
else
|
13
|
-
config.update({
|
14
|
-
:adapter => 'mysql',
|
15
|
-
:database => 'weblog_development',
|
16
|
-
:host => 'localhost'
|
17
|
-
})
|
18
|
-
end
|
19
|
-
|
20
9
|
ActiveRecord::Base.establish_connection(config)
|
data/test/db/postgres.rb
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
config = {
|
2
|
-
:adapter => '
|
2
|
+
:adapter => 'postgresql',
|
3
3
|
:database => 'weblog_development',
|
4
|
-
:
|
5
|
-
:driver => 'org.postgresql.Driver',
|
4
|
+
:host => 'localhost',
|
6
5
|
:username => 'blog',
|
7
6
|
:password => ''
|
8
7
|
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'java'
|
2
|
+
require 'lib/jdbc_adapter/jdbc_db2'
|
3
|
+
require 'test/unit'
|
4
|
+
|
5
|
+
class JdbcSpec::DB2Test < Test::Unit::TestCase
|
6
|
+
def setup
|
7
|
+
@inst = Object.new
|
8
|
+
@inst.extend JdbcSpec::DB2
|
9
|
+
@column = Object.new
|
10
|
+
class <<@column
|
11
|
+
attr_accessor :type
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_quote_decimal
|
16
|
+
assert_equal %q{'123.45'}, @inst.quote("123.45")
|
17
|
+
@column.type = :decimal
|
18
|
+
assert_equal %q{123.45}, @inst.quote("123.45", @column), "decimal columns should not have quotes"
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
data/test/simple.rb
CHANGED
@@ -115,16 +115,12 @@ module SimpleTestMethods
|
|
115
115
|
|
116
116
|
end
|
117
117
|
|
118
|
-
class ActiveRecord::Base
|
119
|
-
cattr_accessor :defined_connections
|
120
|
-
end
|
121
|
-
|
122
118
|
module MultibyteTestMethods
|
123
119
|
include MigrationSetup
|
124
120
|
|
125
121
|
def setup
|
126
122
|
super
|
127
|
-
config = ActiveRecord::Base.
|
123
|
+
config = ActiveRecord::Base.connection.config
|
128
124
|
props = java.util.Properties.new
|
129
125
|
props.setProperty("user", config[:username])
|
130
126
|
props.setProperty("password", config[:password])
|
@@ -138,16 +134,18 @@ module MultibyteTestMethods
|
|
138
134
|
end
|
139
135
|
|
140
136
|
def test_select_multibyte_string
|
141
|
-
@java_con.createStatement().execute("insert into entries (title) values ('テスト')")
|
137
|
+
@java_con.createStatement().execute("insert into entries (title, content) values ('テスト', '本文')")
|
142
138
|
entry = Entry.find(:first)
|
143
139
|
assert_equal "テスト", entry.title
|
140
|
+
assert_equal "本文", entry.content
|
144
141
|
assert_equal entry, Entry.find_by_title("テスト")
|
145
142
|
end
|
146
143
|
|
147
144
|
def test_update_multibyte_string
|
148
|
-
Entry.create!(:title => "テスト")
|
149
|
-
rs = @java_con.createStatement().executeQuery("select title from entries")
|
145
|
+
Entry.create!(:title => "テスト", :content => "本文")
|
146
|
+
rs = @java_con.createStatement().executeQuery("select title, content from entries")
|
150
147
|
assert rs.next
|
151
148
|
assert_equal "テスト", rs.getString(1)
|
149
|
+
assert_equal "本文", rs.getString(2)
|
152
150
|
end
|
153
151
|
end
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.2
|
|
3
3
|
specification_version: 1
|
4
4
|
name: ActiveRecord-JDBC
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: "0.
|
7
|
-
date: 2007-
|
6
|
+
version: "0.5"
|
7
|
+
date: 2007-08-24 00:00:00 -07:00
|
8
8
|
summary: JDBC adapter for ActiveRecord, for use within JRuby on Rails.
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -34,8 +34,15 @@ files:
|
|
34
34
|
- README.txt
|
35
35
|
- Rakefile
|
36
36
|
- LICENSE
|
37
|
+
- lib/active_record/connection_adapters/derby_adapter.rb
|
38
|
+
- lib/active_record/connection_adapters/h2_adapter.rb
|
39
|
+
- lib/active_record/connection_adapters/hsqldb_adapter.rb
|
37
40
|
- lib/active_record/connection_adapters/jdbc_adapter.rb
|
38
41
|
- lib/active_record/connection_adapters/jdbc_adapter_spec.rb
|
42
|
+
- lib/active_record/connection_adapters/jndi_adapter.rb
|
43
|
+
- lib/active_record/connection_adapters/mysql_adapter.rb
|
44
|
+
- lib/active_record/connection_adapters/oracle_adapter.rb
|
45
|
+
- lib/active_record/connection_adapters/postgresql_adapter.rb
|
39
46
|
- lib/jdbc_adapter/jdbc_db2.rb
|
40
47
|
- lib/jdbc_adapter/jdbc_derby.rb
|
41
48
|
- lib/jdbc_adapter/jdbc_firebird.rb
|
@@ -53,14 +60,17 @@ files:
|
|
53
60
|
- test/db/derby.rb
|
54
61
|
- test/db/h2.rb
|
55
62
|
- test/db/hsqldb.rb
|
63
|
+
- test/db/jdbc.rb
|
56
64
|
- test/db/jndi_config.rb
|
57
65
|
- test/db/logger.rb
|
58
66
|
- test/db/mysql.rb
|
59
67
|
- test/db/postgres.rb
|
60
68
|
- test/derby_multibyte_test.rb
|
61
69
|
- test/derby_simple_test.rb
|
70
|
+
- test/generic_jdbc_connection_test.rb
|
62
71
|
- test/h2_simple_test.rb
|
63
72
|
- test/hsqldb_simple_test.rb
|
73
|
+
- test/jdbc_adapter/jdbc_db2_test.rb
|
64
74
|
- test/jdbc_common.rb
|
65
75
|
- test/jndi_test.rb
|
66
76
|
- test/manualTestDatabase.rb
|
@@ -78,6 +88,9 @@ files:
|
|
78
88
|
- test/postgres_simple_test.rb
|
79
89
|
- test/simple.rb
|
80
90
|
- lib/tasks/jdbc_databases.rake
|
91
|
+
- src/java/JdbcAdapterInternalService.java
|
92
|
+
- src/java/JDBCDerbySpec.java
|
93
|
+
- src/java/JDBCMySQLSpec.java
|
81
94
|
test_files: []
|
82
95
|
|
83
96
|
rdoc_options:
|