fluiddb 0.0.22 → 0.0.23
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/lib/FluidDb/Pgsql.rb +1 -1
- data/lib/FluidDb/TinyTds.rb +15 -8
- metadata +2 -2
data/lib/FluidDb/Pgsql.rb
CHANGED
data/lib/FluidDb/TinyTds.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
require "FluidDb"
|
2
2
|
require "tiny_tds"
|
3
|
+
require "cgi"
|
3
4
|
|
4
5
|
module FluidDb
|
5
6
|
|
@@ -20,17 +21,23 @@ module FluidDb
|
|
20
21
|
if dataserver == "" ||
|
21
22
|
database == "" then
|
22
23
|
raise "*** You need to specify both a dataserver and a database for the tinytds driver. Expected format: tinytds://<user>:<pass>@<dataserver>/<database>\n" +
|
23
|
-
|
24
|
+
"*** The specified dataserver should have an entry in /etc/freetds/freetds.conf"
|
24
25
|
end
|
25
|
-
|
26
|
+
|
26
27
|
if username == "" ||
|
27
28
|
password == "" then
|
28
29
|
puts "*** Warning - you will normally need to specify both a username and password for the tinytds driver to work correctly."
|
29
30
|
end
|
30
31
|
|
31
|
-
|
32
|
-
|
32
|
+
hash = Hash["username", username, "password", password, "database", database, "dataserver", dataserver]
|
33
|
+
if !uri.query.nil? then
|
34
|
+
cgi = CGI.parse( uri.query )
|
35
|
+
hash["timeout"] = cgi["timeout"][0] if cgi.has_key?( "timeout" )
|
36
|
+
end
|
33
37
|
|
38
|
+
@connection = ::TinyTds::Client.new( hash )
|
39
|
+
end
|
40
|
+
|
34
41
|
def close
|
35
42
|
@connection.close
|
36
43
|
end
|
@@ -38,7 +45,7 @@ module FluidDb
|
|
38
45
|
def queryForArray( sql, params )
|
39
46
|
sql = self.format_to_sql( sql, params )
|
40
47
|
results = @connection.execute(sql)
|
41
|
-
|
48
|
+
|
42
49
|
count = 0
|
43
50
|
tuple = ""
|
44
51
|
results.each do |row|
|
@@ -80,7 +87,7 @@ module FluidDb
|
|
80
87
|
results.each do |row|
|
81
88
|
list << row
|
82
89
|
end
|
83
|
-
|
90
|
+
|
84
91
|
return list
|
85
92
|
end
|
86
93
|
|
@@ -89,13 +96,13 @@ module FluidDb
|
|
89
96
|
sql = self.format_to_sql( sql, params )
|
90
97
|
r = @connection.execute( sql );
|
91
98
|
r.each
|
92
|
-
|
99
|
+
|
93
100
|
if !expected_affected_rows.nil? and
|
94
101
|
r.affected_rows != expected_affected_rows then
|
95
102
|
raise ExpectedAffectedRowsError.new( "Expected affected rows, #{expected_affected_rows}, Actual affected rows, #{r.affected_rows}")
|
96
103
|
end
|
97
104
|
end
|
98
|
-
|
105
|
+
|
99
106
|
def insert( sql, params )
|
100
107
|
raise "Pgsql uses SEQUENCES, so possibly easier to use 2 executes"
|
101
108
|
# self.execute( sql, params )
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluiddb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.23
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-03
|
12
|
+
date: 2013-04-03 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: A semantic layer for db interaction
|
15
15
|
email: guy@guyirvine.com
|