imparcial 0.0.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/lib/imparcial/driver/base/expression/base.rb +104 -0
- data/lib/imparcial/driver/base/expression/delete.rb +72 -0
- data/lib/imparcial/driver/base/expression/index.rb +199 -0
- data/lib/imparcial/driver/base/expression/insert.rb +33 -0
- data/lib/imparcial/driver/base/expression/lock.rb +11 -0
- data/lib/imparcial/driver/base/expression/select.rb +36 -0
- data/lib/imparcial/driver/base/expression/sequence.rb +189 -0
- data/lib/imparcial/driver/base/expression/statement.rb +128 -0
- data/lib/imparcial/driver/base/expression/table_diff.rb +154 -0
- data/lib/imparcial/driver/base/expression/table_evolution.rb +94 -0
- data/lib/imparcial/driver/base/expression/table_metadata.rb +122 -0
- data/lib/imparcial/driver/base/expression/table_operation.rb +137 -0
- data/lib/imparcial/driver/base/expression/transaction.rb +59 -0
- data/lib/imparcial/driver/base/expression/update.rb +33 -0
- data/lib/imparcial/driver/base/expression/util.rb +45 -0
- data/lib/imparcial/driver/base/expression.rb +37 -0
- data/lib/imparcial/driver/base/result.rb +94 -0
- data/lib/imparcial/driver/base/sql/delete.rb +22 -0
- data/lib/imparcial/driver/base/sql/index.rb +53 -0
- data/lib/imparcial/driver/base/sql/insert.rb +63 -0
- data/lib/imparcial/driver/base/sql/select.rb +101 -0
- data/lib/imparcial/driver/base/sql/sequence.rb +55 -0
- data/lib/imparcial/driver/base/sql/table_metadata.rb +29 -0
- data/lib/imparcial/driver/base/sql/table_operation.rb +49 -0
- data/lib/imparcial/driver/base/sql/transaction.rb +43 -0
- data/lib/imparcial/driver/base/sql/update.rb +29 -0
- data/lib/imparcial/driver/base/sql.rb +25 -0
- data/lib/imparcial/driver/base/typemap.rb +214 -0
- data/lib/imparcial/driver/base/util.rb +41 -0
- data/lib/imparcial/driver/base.rb +156 -0
- data/lib/imparcial/driver/mysql/expression/index.rb +44 -0
- data/lib/imparcial/driver/mysql/expression/table.rb +26 -0
- data/lib/imparcial/driver/mysql/expression.rb +11 -0
- data/lib/imparcial/driver/mysql/result.rb +33 -0
- data/lib/imparcial/driver/mysql/sql/index.rb +51 -0
- data/lib/imparcial/driver/mysql/sql/sequence.rb +39 -0
- data/lib/imparcial/driver/mysql/sql/table_metadata.rb +43 -0
- data/lib/imparcial/driver/mysql/sql/table_operation.rb +20 -0
- data/lib/imparcial/driver/mysql/sql.rb +15 -0
- data/lib/imparcial/driver/mysql/typemap.rb +13 -0
- data/lib/imparcial/driver/mysql/util.rb +13 -0
- data/lib/imparcial/driver/mysql.rb +48 -0
- data/lib/imparcial/driver/postgre/expression/index.rb +10 -0
- data/lib/imparcial/driver/postgre/expression/sequence.rb +9 -0
- data/lib/imparcial/driver/postgre/expression/table.rb +20 -0
- data/lib/imparcial/driver/postgre/expression.rb +13 -0
- data/lib/imparcial/driver/postgre/result.rb +35 -0
- data/lib/imparcial/driver/postgre/sql/index.rb +53 -0
- data/lib/imparcial/driver/postgre/sql/sequence.rb +28 -0
- data/lib/imparcial/driver/postgre/sql/table_metadata.rb +46 -0
- data/lib/imparcial/driver/postgre/sql/table_operation.rb +9 -0
- data/lib/imparcial/driver/postgre/sql.rb +15 -0
- data/lib/imparcial/driver/postgre/typemap.rb +29 -0
- data/lib/imparcial/driver/postgre/util.rb +19 -0
- data/lib/imparcial/driver/postgre.rb +43 -0
- data/lib/imparcial/driver.rb +1 -0
- data/lib/imparcial/exception.rb +61 -0
- data/lib/imparcial.rb +82 -0
- metadata +114 -0
@@ -0,0 +1,48 @@
|
|
1
|
+
require 'mysql'
|
2
|
+
require 'imparcial/driver/mysql/util'
|
3
|
+
require 'imparcial/driver/mysql/typemap'
|
4
|
+
require 'imparcial/driver/mysql/result'
|
5
|
+
require 'imparcial/driver/mysql/sql'
|
6
|
+
require 'imparcial/driver/mysql/expression'
|
7
|
+
|
8
|
+
module Imparcial
|
9
|
+
module Driver
|
10
|
+
class AdapterMysql < AdapterBase
|
11
|
+
|
12
|
+
def adapter_specific_exception
|
13
|
+
|
14
|
+
Mysql::Error
|
15
|
+
|
16
|
+
end
|
17
|
+
|
18
|
+
include UtilMysql
|
19
|
+
include TypemapMysql
|
20
|
+
include SQLMysql
|
21
|
+
include ExpressionMysql
|
22
|
+
|
23
|
+
def connect
|
24
|
+
|
25
|
+
@conn = Mysql.real_connect @host, @user, @pass, @database
|
26
|
+
|
27
|
+
rescue adapter_specific_exception => ex
|
28
|
+
|
29
|
+
raise AdapterConnectionError.new(ex.message)
|
30
|
+
|
31
|
+
end
|
32
|
+
|
33
|
+
def version
|
34
|
+
|
35
|
+
conn.get_server_info
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
def query ( sql )
|
40
|
+
|
41
|
+
result = conn.query sql
|
42
|
+
@result = ResultMysql.new result
|
43
|
+
|
44
|
+
end
|
45
|
+
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Imparcial
|
2
|
+
module Driver
|
3
|
+
module ExpressionPostgre
|
4
|
+
module Table
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
def field_to_column ( field )
|
9
|
+
|
10
|
+
column = super
|
11
|
+
column[:type] = 'SERIAL' if field[:auto_increment]
|
12
|
+
|
13
|
+
column
|
14
|
+
|
15
|
+
end
|
16
|
+
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require 'imparcial/driver/postgre/expression/sequence'
|
2
|
+
require 'imparcial/driver/postgre/expression/table'
|
3
|
+
require 'imparcial/driver/postgre/expression/index'
|
4
|
+
|
5
|
+
module Imparcial
|
6
|
+
module Driver
|
7
|
+
module ExpressionPostgre
|
8
|
+
include Sequence
|
9
|
+
include Table
|
10
|
+
include Index
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module Imparcial
|
2
|
+
module Driver
|
3
|
+
class ResultPostgre < ResultBase
|
4
|
+
|
5
|
+
def rows
|
6
|
+
|
7
|
+
@specific.result.length
|
8
|
+
|
9
|
+
end
|
10
|
+
|
11
|
+
def fetch
|
12
|
+
|
13
|
+
fields = @specific.fields
|
14
|
+
rows = @specific.result
|
15
|
+
|
16
|
+
rows.each do |row|
|
17
|
+
|
18
|
+
v = []
|
19
|
+
|
20
|
+
row.each_with_index do |value, index|
|
21
|
+
|
22
|
+
v << Row.new(fields[index], value)
|
23
|
+
|
24
|
+
end
|
25
|
+
|
26
|
+
yield(*v)
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
module Imparcial
|
2
|
+
module Driver
|
3
|
+
module SQLPostgre
|
4
|
+
module Index
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
# Generate SQL statement for verifying if a given index exists.
|
9
|
+
|
10
|
+
def sql_for_index_exists? ( options )
|
11
|
+
|
12
|
+
%{
|
13
|
+
SELECT 1 FROM pg_class WHERE relkind = 'i' AND
|
14
|
+
relname = #{quote_value(options[:index_name])}
|
15
|
+
}
|
16
|
+
|
17
|
+
end
|
18
|
+
|
19
|
+
# Generate SQL statement for retrieving all indexes.
|
20
|
+
|
21
|
+
def sql_for_retrieving_indexes
|
22
|
+
|
23
|
+
%{
|
24
|
+
SELECT
|
25
|
+
c2.relname as "table",
|
26
|
+
(select attname from pg_attribute where attrelid = i.indexrelid AND attnum > 0) as "column" ,
|
27
|
+
c.relname as "index"
|
28
|
+
FROM pg_class c
|
29
|
+
JOIN pg_roles r ON r.oid = c.relowner
|
30
|
+
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
|
31
|
+
LEFT JOIN pg_index i ON i.indexrelid = c.oid
|
32
|
+
LEFT JOIN pg_class c2 ON i.indrelid = c2.oid
|
33
|
+
WHERE c.relkind IN ('i','')
|
34
|
+
AND n.nspname NOT IN ('pg_catalog', 'pg_toast')
|
35
|
+
}
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
# Generate SQL statement for retrieving indexes for a specific table.
|
40
|
+
|
41
|
+
def sql_for_retrieving_indexes_for_table ( options )
|
42
|
+
|
43
|
+
sql_for_retrieving_indexes + %{
|
44
|
+
AND c2.relname = #{quote_value(options[:table_name])}
|
45
|
+
}
|
46
|
+
|
47
|
+
end
|
48
|
+
|
49
|
+
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module Imparcial
|
2
|
+
module Driver
|
3
|
+
module SQLPostgre
|
4
|
+
module Sequence
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
def sql_for_sequence_exists? ( options )
|
9
|
+
|
10
|
+
%{
|
11
|
+
SELECT 1 FROM pg_class WHERE relkind = 'S' AND
|
12
|
+
relname = #{quote_value(options[:sequence_name])}
|
13
|
+
}
|
14
|
+
|
15
|
+
end
|
16
|
+
|
17
|
+
# Generate SQL statement for retrieving sequences.
|
18
|
+
|
19
|
+
def sql_for_retrieving_sequences
|
20
|
+
|
21
|
+
"SELECT relname FROM pg_class WHERE relkind = 'S'"
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module Imparcial
|
2
|
+
module Driver
|
3
|
+
module SQLPostgre
|
4
|
+
module TableMetadata
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
# Generate SQL statement for retrieving tables.
|
9
|
+
|
10
|
+
def sql_for_retrieving_tables
|
11
|
+
|
12
|
+
%{
|
13
|
+
SELECT table_name FROM information_schema.tables
|
14
|
+
WHERE table_schema = 'public'
|
15
|
+
}
|
16
|
+
|
17
|
+
end
|
18
|
+
|
19
|
+
# Generate SQL statement for retrieving columns.
|
20
|
+
|
21
|
+
def sql_for_retrieving_columns ( options )
|
22
|
+
|
23
|
+
%{
|
24
|
+
SELECT
|
25
|
+
A.column_name, A.data_type, A.character_maximum_length,
|
26
|
+
(A.is_nullable = 'YES') as allow_null,
|
27
|
+
(A.column_name = B.column_name) as pk,
|
28
|
+
A.column_default,
|
29
|
+
A.column_default LIKE 'nextval%' as auto_inc,
|
30
|
+
A.column_name in (SELECT sa.attname from pg_class sc
|
31
|
+
JOIN pg_index si ON sc.oid = si.indexrelid
|
32
|
+
JOIN pg_class sc2 ON sc2.oid = si.indrelid
|
33
|
+
JOIN pg_attribute sa ON sc.oid = sa.attrelid
|
34
|
+
WHERE sc2.relname = #{quote_value(options[:table_name])} AND sa.attname = A.column_name
|
35
|
+
) as column_indexed
|
36
|
+
FROM information_schema.columns A
|
37
|
+
LEFT JOIN information_schema.key_column_usage B ON A.table_name = B.table_name
|
38
|
+
WHERE A.table_name = #{quote_value(options[:table_name])};
|
39
|
+
}
|
40
|
+
|
41
|
+
end
|
42
|
+
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'imparcial/driver/postgre/sql/table_operation'
|
2
|
+
require 'imparcial/driver/postgre/sql/table_metadata'
|
3
|
+
require 'imparcial/driver/postgre/sql/sequence'
|
4
|
+
require 'imparcial/driver/postgre/sql/index'
|
5
|
+
|
6
|
+
module Imparcial
|
7
|
+
module Driver
|
8
|
+
module SQLPostgre
|
9
|
+
include TableOperation
|
10
|
+
include TableMetadata
|
11
|
+
include Sequence
|
12
|
+
include Index
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module Imparcial
|
2
|
+
module Driver
|
3
|
+
module TypemapPostgre
|
4
|
+
|
5
|
+
def sql_types
|
6
|
+
|
7
|
+
super.dup.merge!('CHARACTER VARYING' => :string)
|
8
|
+
|
9
|
+
end
|
10
|
+
|
11
|
+
private
|
12
|
+
|
13
|
+
# Due to nextval, we have to format the default value
|
14
|
+
|
15
|
+
def parse_column ( column )
|
16
|
+
|
17
|
+
super
|
18
|
+
|
19
|
+
if column[:default_value]
|
20
|
+
|
21
|
+
column[:default_value].gsub!(/::.*/,'')
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
require 'postgres'
|
2
|
+
require 'imparcial/driver/postgre/util'
|
3
|
+
require 'imparcial/driver/postgre/typemap'
|
4
|
+
require 'imparcial/driver/postgre/result'
|
5
|
+
require 'imparcial/driver/postgre/sql'
|
6
|
+
require 'imparcial/driver/postgre/expression'
|
7
|
+
|
8
|
+
module Imparcial
|
9
|
+
module Driver
|
10
|
+
class AdapterPostgre < AdapterBase
|
11
|
+
|
12
|
+
def adapter_specific_exception
|
13
|
+
|
14
|
+
PGError
|
15
|
+
|
16
|
+
end
|
17
|
+
|
18
|
+
include UtilPostgre
|
19
|
+
include TypemapPostgre
|
20
|
+
include SQLPostgre
|
21
|
+
include ExpressionPostgre
|
22
|
+
|
23
|
+
def connect
|
24
|
+
|
25
|
+
@conn = PGconn.connect @host, @port, '', '', @database, @user, @pass
|
26
|
+
|
27
|
+
rescue adapter_specific_exception => ex
|
28
|
+
|
29
|
+
raise AdapterConnectionError.new(ex.message)
|
30
|
+
|
31
|
+
end
|
32
|
+
|
33
|
+
def query ( sql )
|
34
|
+
|
35
|
+
result = conn.exec sql
|
36
|
+
@result = ResultPostgre.new result
|
37
|
+
|
38
|
+
end
|
39
|
+
|
40
|
+
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
require 'imparcial/driver/base'
|
@@ -0,0 +1,61 @@
|
|
1
|
+
module Imparcial
|
2
|
+
|
3
|
+
# Main class
|
4
|
+
|
5
|
+
class ImparcialError < StandardError; end
|
6
|
+
|
7
|
+
# Adapter
|
8
|
+
|
9
|
+
class AdapterError < ImparcialError; end
|
10
|
+
class AdapterNotFound < AdapterError; end
|
11
|
+
class AdapterConfigError < AdapterError; end
|
12
|
+
class AdapterConnectionError < AdapterError; end
|
13
|
+
|
14
|
+
# Result
|
15
|
+
|
16
|
+
class ResultError < ImparcialError; end
|
17
|
+
|
18
|
+
# Expression
|
19
|
+
|
20
|
+
class ExpressionError < ImparcialError; end
|
21
|
+
|
22
|
+
class FeatureNotFound < ExpressionError; end
|
23
|
+
|
24
|
+
# Table
|
25
|
+
|
26
|
+
class TableError < ExpressionError; end
|
27
|
+
class TableCreateError < TableError; end
|
28
|
+
class TableDropError < TableError; end
|
29
|
+
class TableRetrieveError < TableError; end
|
30
|
+
|
31
|
+
class ConditionError < ExpressionError; end
|
32
|
+
class OptionError < ExpressionError; end
|
33
|
+
|
34
|
+
# Crud
|
35
|
+
|
36
|
+
class SelectError < ExpressionError; end
|
37
|
+
class InsertError < ExpressionError; end
|
38
|
+
class DeleteError < ExpressionError; end
|
39
|
+
class UpdateError < ExpressionError; end
|
40
|
+
|
41
|
+
# Sequence
|
42
|
+
|
43
|
+
class SequenceError < ExpressionError; end
|
44
|
+
class SequenceCreateError < SequenceError; end
|
45
|
+
class SequenceDropError < SequenceError; end
|
46
|
+
|
47
|
+
# Transaction
|
48
|
+
|
49
|
+
class TransactionError < ExpressionError; end
|
50
|
+
|
51
|
+
# Lock
|
52
|
+
|
53
|
+
class LockError < ExpressionError; end
|
54
|
+
|
55
|
+
# Index
|
56
|
+
|
57
|
+
class IndexError < ExpressionError; end
|
58
|
+
class IndexCreateError < IndexError; end
|
59
|
+
class IndexDropError < IndexError; end
|
60
|
+
|
61
|
+
end
|
data/lib/imparcial.rb
ADDED
@@ -0,0 +1,82 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
|
3
|
+
require 'facets/core/string/camelize'
|
4
|
+
require 'facets/core/string/to_const'
|
5
|
+
require 'facets/core/symbol/to_const'
|
6
|
+
|
7
|
+
require 'imparcial/exception'
|
8
|
+
require 'imparcial/driver'
|
9
|
+
|
10
|
+
module Imparcial
|
11
|
+
class Initializer
|
12
|
+
|
13
|
+
attr_accessor :host, :driver, :port, :user, :pass, :socket, :database
|
14
|
+
|
15
|
+
alias_method :adapter=, :driver=
|
16
|
+
alias_method :username=, :user=
|
17
|
+
alias_method :password=, :pass=
|
18
|
+
alias_method :sock=, :socket=
|
19
|
+
alias_method :db=, :database=
|
20
|
+
alias_method :hostname=, :host=
|
21
|
+
|
22
|
+
alias_method :adapter, :driver
|
23
|
+
alias_method :username, :user
|
24
|
+
alias_method :password, :pass
|
25
|
+
alias_method :sock, :socket
|
26
|
+
alias_method :db, :database
|
27
|
+
alias_method :hostname, :host
|
28
|
+
|
29
|
+
# Default is localhost.
|
30
|
+
|
31
|
+
def host
|
32
|
+
|
33
|
+
@host || 'localhost'
|
34
|
+
|
35
|
+
end
|
36
|
+
|
37
|
+
# Default is Mysql
|
38
|
+
|
39
|
+
def driver
|
40
|
+
|
41
|
+
@driver || 'mysql'
|
42
|
+
|
43
|
+
end
|
44
|
+
|
45
|
+
# Default is STDOUT
|
46
|
+
|
47
|
+
def logger
|
48
|
+
|
49
|
+
@logger || Logger.new( STDERR )
|
50
|
+
|
51
|
+
end
|
52
|
+
|
53
|
+
def self.run
|
54
|
+
|
55
|
+
instance = new
|
56
|
+
|
57
|
+
yield instance
|
58
|
+
|
59
|
+
instance.start_me
|
60
|
+
|
61
|
+
end
|
62
|
+
|
63
|
+
def start_me
|
64
|
+
|
65
|
+
require 'imparcial/driver/' + driver
|
66
|
+
|
67
|
+
# Get an adapter const.
|
68
|
+
|
69
|
+
adapter_const = ('Imparcial::Driver::Adapter' + driver.camelize).to_const
|
70
|
+
|
71
|
+
adapter = adapter_const.new self
|
72
|
+
|
73
|
+
adapter
|
74
|
+
|
75
|
+
rescue LoadError
|
76
|
+
|
77
|
+
raise AdapterNotFound.new(driver + ' cannot be found')
|
78
|
+
|
79
|
+
end
|
80
|
+
|
81
|
+
end
|
82
|
+
end
|
metadata
ADDED
@@ -0,0 +1,114 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
rubygems_version: 0.9.4.3
|
3
|
+
specification_version: 1
|
4
|
+
name: imparcial
|
5
|
+
version: !ruby/object:Gem::Version
|
6
|
+
version: 0.0.1
|
7
|
+
date: 2007-08-22 00:00:00 -03:00
|
8
|
+
summary: Standard Database Interface for ruby
|
9
|
+
require_paths:
|
10
|
+
- lib
|
11
|
+
email: antonio@gmail.com
|
12
|
+
homepage: http://guilherme-antonio.blogspot.com
|
13
|
+
rubyforge_project:
|
14
|
+
description:
|
15
|
+
autorequire:
|
16
|
+
default_executable:
|
17
|
+
bindir: bin
|
18
|
+
has_rdoc: false
|
19
|
+
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">"
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.0.0
|
24
|
+
version:
|
25
|
+
platform: ruby
|
26
|
+
signing_key:
|
27
|
+
cert_chain:
|
28
|
+
post_install_message:
|
29
|
+
authors:
|
30
|
+
- Guilherme Antoniolo Ferreira
|
31
|
+
files:
|
32
|
+
- lib/imparcial
|
33
|
+
- lib/imparcial.rb
|
34
|
+
- lib/imparcial/driver
|
35
|
+
- lib/imparcial/driver.rb
|
36
|
+
- lib/imparcial/exception.rb
|
37
|
+
- lib/imparcial/driver/base.rb
|
38
|
+
- lib/imparcial/driver/base
|
39
|
+
- lib/imparcial/driver/postgre.rb
|
40
|
+
- lib/imparcial/driver/mysql.rb
|
41
|
+
- lib/imparcial/driver/mysql
|
42
|
+
- lib/imparcial/driver/postgre
|
43
|
+
- lib/imparcial/driver/base/expression
|
44
|
+
- lib/imparcial/driver/base/result.rb
|
45
|
+
- lib/imparcial/driver/base/typemap.rb
|
46
|
+
- lib/imparcial/driver/base/expression.rb
|
47
|
+
- lib/imparcial/driver/base/util.rb
|
48
|
+
- lib/imparcial/driver/base/sql
|
49
|
+
- lib/imparcial/driver/base/sql.rb
|
50
|
+
- lib/imparcial/driver/base/expression/select.rb
|
51
|
+
- lib/imparcial/driver/base/expression/base.rb
|
52
|
+
- lib/imparcial/driver/base/expression/table_diff.rb
|
53
|
+
- lib/imparcial/driver/base/expression/transaction.rb
|
54
|
+
- lib/imparcial/driver/base/expression/delete.rb
|
55
|
+
- lib/imparcial/driver/base/expression/sequence.rb
|
56
|
+
- lib/imparcial/driver/base/expression/insert.rb
|
57
|
+
- lib/imparcial/driver/base/expression/table_operation.rb
|
58
|
+
- lib/imparcial/driver/base/expression/index.rb
|
59
|
+
- lib/imparcial/driver/base/expression/lock.rb
|
60
|
+
- lib/imparcial/driver/base/expression/statement.rb
|
61
|
+
- lib/imparcial/driver/base/expression/util.rb
|
62
|
+
- lib/imparcial/driver/base/expression/table_metadata.rb
|
63
|
+
- lib/imparcial/driver/base/expression/update.rb
|
64
|
+
- lib/imparcial/driver/base/expression/table_evolution.rb
|
65
|
+
- lib/imparcial/driver/base/sql/select.rb
|
66
|
+
- lib/imparcial/driver/base/sql/transaction.rb
|
67
|
+
- lib/imparcial/driver/base/sql/delete.rb
|
68
|
+
- lib/imparcial/driver/base/sql/sequence.rb
|
69
|
+
- lib/imparcial/driver/base/sql/insert.rb
|
70
|
+
- lib/imparcial/driver/base/sql/table_operation.rb
|
71
|
+
- lib/imparcial/driver/base/sql/index.rb
|
72
|
+
- lib/imparcial/driver/base/sql/table_metadata.rb
|
73
|
+
- lib/imparcial/driver/base/sql/update.rb
|
74
|
+
- lib/imparcial/driver/mysql/expression
|
75
|
+
- lib/imparcial/driver/mysql/result.rb
|
76
|
+
- lib/imparcial/driver/mysql/typemap.rb
|
77
|
+
- lib/imparcial/driver/mysql/expression.rb
|
78
|
+
- lib/imparcial/driver/mysql/util.rb
|
79
|
+
- lib/imparcial/driver/mysql/sql
|
80
|
+
- lib/imparcial/driver/mysql/sql.rb
|
81
|
+
- lib/imparcial/driver/mysql/expression/table.rb
|
82
|
+
- lib/imparcial/driver/mysql/expression/index.rb
|
83
|
+
- lib/imparcial/driver/mysql/sql/sequence.rb
|
84
|
+
- lib/imparcial/driver/mysql/sql/table_operation.rb
|
85
|
+
- lib/imparcial/driver/mysql/sql/index.rb
|
86
|
+
- lib/imparcial/driver/mysql/sql/table_metadata.rb
|
87
|
+
- lib/imparcial/driver/postgre/expression
|
88
|
+
- lib/imparcial/driver/postgre/result.rb
|
89
|
+
- lib/imparcial/driver/postgre/typemap.rb
|
90
|
+
- lib/imparcial/driver/postgre/expression.rb
|
91
|
+
- lib/imparcial/driver/postgre/util.rb
|
92
|
+
- lib/imparcial/driver/postgre/sql
|
93
|
+
- lib/imparcial/driver/postgre/sql.rb
|
94
|
+
- lib/imparcial/driver/postgre/expression/table.rb
|
95
|
+
- lib/imparcial/driver/postgre/expression/sequence.rb
|
96
|
+
- lib/imparcial/driver/postgre/expression/index.rb
|
97
|
+
- lib/imparcial/driver/postgre/sql/sequence.rb
|
98
|
+
- lib/imparcial/driver/postgre/sql/table_operation.rb
|
99
|
+
- lib/imparcial/driver/postgre/sql/index.rb
|
100
|
+
- lib/imparcial/driver/postgre/sql/table_metadata.rb
|
101
|
+
test_files: []
|
102
|
+
|
103
|
+
rdoc_options: []
|
104
|
+
|
105
|
+
extra_rdoc_files: []
|
106
|
+
|
107
|
+
executables: []
|
108
|
+
|
109
|
+
extensions: []
|
110
|
+
|
111
|
+
requirements: []
|
112
|
+
|
113
|
+
dependencies: []
|
114
|
+
|