db_meta 0.1.1 → 0.1.3
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.
- checksums.yaml +4 -4
- data/.gitignore +2 -0
- data/CHANGELOG.md +16 -0
- data/Gemfile.lock +4 -4
- data/README.md +52 -2
- data/db_meta.gemspec +1 -1
- data/lib/db_meta/abstract.rb +13 -5
- data/lib/db_meta/constant.rb +45 -0
- data/lib/db_meta/logger.rb +15 -0
- data/lib/db_meta/oracle/base.rb +54 -0
- data/lib/db_meta/oracle/connection.rb +39 -0
- data/lib/db_meta/oracle/helper.rb +37 -0
- data/lib/db_meta/oracle/objects.rb +204 -0
- data/lib/db_meta/oracle/oracle.rb +172 -3
- data/lib/db_meta/oracle/types/column.rb +70 -0
- data/lib/db_meta/oracle/types/comment.rb +20 -0
- data/lib/db_meta/oracle/types/constraint.rb +91 -0
- data/lib/db_meta/oracle/types/constraint_collection.rb +46 -0
- data/lib/db_meta/oracle/types/database_link.rb +33 -0
- data/lib/db_meta/oracle/types/function.rb +30 -0
- data/lib/db_meta/oracle/types/grant.rb +46 -0
- data/lib/db_meta/oracle/types/grant_collection.rb +42 -0
- data/lib/db_meta/oracle/types/index.rb +43 -0
- data/lib/db_meta/oracle/types/lob.rb +13 -0
- data/lib/db_meta/oracle/types/materialized_view.rb +65 -0
- data/lib/db_meta/oracle/types/package.rb +42 -0
- data/lib/db_meta/oracle/types/package_body.rb +13 -0
- data/lib/db_meta/oracle/types/procedure.rb +30 -0
- data/lib/db_meta/oracle/types/sequence.rb +41 -0
- data/lib/db_meta/oracle/types/synonym.rb +42 -0
- data/lib/db_meta/oracle/types/synonym_collection.rb +42 -0
- data/lib/db_meta/oracle/types/table.rb +164 -0
- data/lib/db_meta/oracle/types/table_data_collection.rb +85 -0
- data/lib/db_meta/oracle/types/trigger.rb +64 -0
- data/lib/db_meta/oracle/types/type.rb +41 -0
- data/lib/db_meta/oracle/types/type_body.rb +13 -0
- data/lib/db_meta/oracle/types/view.rb +60 -0
- data/lib/db_meta/version.rb +1 -1
- data/lib/db_meta.rb +18 -6
- data/todo.txt +43 -0
- metadata +36 -5
data/todo.txt
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
-- -----------------------------------------------------------------------------
|
2
|
+
-- DB Meta - to do list
|
3
|
+
-- -----------------------------------------------------------------------------
|
4
|
+
|
5
|
+
- storage clauses
|
6
|
+
- materialized view
|
7
|
+
|
8
|
+
-- -------------------------------------
|
9
|
+
-- DONE
|
10
|
+
-- -------------------------------------
|
11
|
+
- trigger
|
12
|
+
- sequence
|
13
|
+
- function
|
14
|
+
- procedure
|
15
|
+
- package
|
16
|
+
- view
|
17
|
+
- synonym
|
18
|
+
- database link
|
19
|
+
- index
|
20
|
+
- lob (part of a table definition)
|
21
|
+
- iot
|
22
|
+
- constraints
|
23
|
+
- grants
|
24
|
+
- merge types (exp. table, index, constraints; synonyms)
|
25
|
+
- grants
|
26
|
+
- type
|
27
|
+
|
28
|
+
|
29
|
+
-- -------------------------------------
|
30
|
+
-- dbms_metadata
|
31
|
+
-- -------------------------------------
|
32
|
+
Basically ok to fetch ddl script but you can not disable certain features (organized as, logging, schema name)
|
33
|
+
|
34
|
+
# disable storage clause
|
35
|
+
connection.exec("begin dbms_metadata.set_transform_param(dbms_metadata.session_transform,'STORAGE', false); end;")
|
36
|
+
connection.exec("begin dbms_metadata.set_transform_param(dbms_metadata.session_transform,'TABLESPACE', false); end;")
|
37
|
+
connection.exec("begin dbms_metadata.set_transform_param(dbms_metadata.session_transform,'SEGMENT_ATTRIBUTES', false); end;")
|
38
|
+
connection.exec("begin dbms_metadata.set_transform_param(dbms_metadata.session_transform,'PRETTY', true); end;")
|
39
|
+
|
40
|
+
cursor = connection.exec("select dbms_metadata.get_ddl(object_type=>'MATERIALIZED_VIEW', name=>'#{@name}') from dual")
|
41
|
+
cursor.fetch do |item|
|
42
|
+
@output = item[0].read
|
43
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: db_meta
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thomi
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-08-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -58,14 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: 2.2.4.1
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: 2.2.4.1
|
69
69
|
description: Database meta and core data extraction.
|
70
70
|
email:
|
71
71
|
- thomas.steiner@ikey.ch
|
@@ -76,6 +76,7 @@ files:
|
|
76
76
|
- ".gitignore"
|
77
77
|
- ".rspec"
|
78
78
|
- ".travis.yml"
|
79
|
+
- CHANGELOG.md
|
79
80
|
- Gemfile
|
80
81
|
- Gemfile.lock
|
81
82
|
- LICENSE
|
@@ -87,8 +88,38 @@ files:
|
|
87
88
|
- examples/simple.rb
|
88
89
|
- lib/db_meta.rb
|
89
90
|
- lib/db_meta/abstract.rb
|
91
|
+
- lib/db_meta/constant.rb
|
92
|
+
- lib/db_meta/logger.rb
|
93
|
+
- lib/db_meta/oracle/base.rb
|
94
|
+
- lib/db_meta/oracle/connection.rb
|
95
|
+
- lib/db_meta/oracle/helper.rb
|
96
|
+
- lib/db_meta/oracle/objects.rb
|
90
97
|
- lib/db_meta/oracle/oracle.rb
|
98
|
+
- lib/db_meta/oracle/types/column.rb
|
99
|
+
- lib/db_meta/oracle/types/comment.rb
|
100
|
+
- lib/db_meta/oracle/types/constraint.rb
|
101
|
+
- lib/db_meta/oracle/types/constraint_collection.rb
|
102
|
+
- lib/db_meta/oracle/types/database_link.rb
|
103
|
+
- lib/db_meta/oracle/types/function.rb
|
104
|
+
- lib/db_meta/oracle/types/grant.rb
|
105
|
+
- lib/db_meta/oracle/types/grant_collection.rb
|
106
|
+
- lib/db_meta/oracle/types/index.rb
|
107
|
+
- lib/db_meta/oracle/types/lob.rb
|
108
|
+
- lib/db_meta/oracle/types/materialized_view.rb
|
109
|
+
- lib/db_meta/oracle/types/package.rb
|
110
|
+
- lib/db_meta/oracle/types/package_body.rb
|
111
|
+
- lib/db_meta/oracle/types/procedure.rb
|
112
|
+
- lib/db_meta/oracle/types/sequence.rb
|
113
|
+
- lib/db_meta/oracle/types/synonym.rb
|
114
|
+
- lib/db_meta/oracle/types/synonym_collection.rb
|
115
|
+
- lib/db_meta/oracle/types/table.rb
|
116
|
+
- lib/db_meta/oracle/types/table_data_collection.rb
|
117
|
+
- lib/db_meta/oracle/types/trigger.rb
|
118
|
+
- lib/db_meta/oracle/types/type.rb
|
119
|
+
- lib/db_meta/oracle/types/type_body.rb
|
120
|
+
- lib/db_meta/oracle/types/view.rb
|
91
121
|
- lib/db_meta/version.rb
|
122
|
+
- todo.txt
|
92
123
|
homepage: https://github.com/thomis/db_meta
|
93
124
|
licenses: []
|
94
125
|
metadata: {}
|
@@ -108,7 +139,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
108
139
|
version: '0'
|
109
140
|
requirements: []
|
110
141
|
rubyforge_project:
|
111
|
-
rubygems_version: 2.
|
142
|
+
rubygems_version: 2.6.12
|
112
143
|
signing_key:
|
113
144
|
specification_version: 4
|
114
145
|
summary: Database meta and core data extraction
|