Project
gadget
# Gadget
Some methods for getting metadata and other deep details from a PostgreSQL database.
## Installation
Add this line to your application's Gemfile:
gem 'gadget'
And then execute:
$ bundle
Or install it yourself as:
$ gem install gadget
## Usage
`#tables(conn)`
Returns a list of all tables in the schema reachable through `conn`.
`#columns(conn, tablename=nil)`
Returns a list of all columns in the schema reachable through `conn`.
If `tablename` is given, returns the columns in only that table.
`#foreign_keys(conn, tablename=nil)`
Returns a list of all foreign keys in the schema reachable through `conn`.
If `tablename` is given, returns the foreign keys in only that table.
`#constraints(conn, tablename=nil)`
Returns a list of all constraints in the schema reachable through `conn`.
If `tablename` is given, returns the constraints in only that table.
`#dependencies(conn)`
Returns a structure representing the dependencies between tables in the schema reachable through `conn`.
Table A is defined as dependent on table B if A contains a foreign key reference to B.
`#tables_in_dependency_order(conn)`
Returns a list of all tables in the schema reachable through `conn`, ordered such that any given table
appears later in the list than all of its dependencies.
`#dependency_graph(conn)`
Returns `.dot` script (suitable for feeding into Graphviz) describing the table dependency graph.
`#functions(conn)`
Returns a list of all functions in the schema reachable through `conn`.
`#sequences(conn)`
Returns a list of all sequences in the schema reachable through `conn`.
`#triggers(conn)`
Returns a list of all triggers in the schema reachable through `conn`.
`#types(conn)`
Returns a list of all types in the schema reachable through `conn`.
## Contributing
1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
Development
Licenses
MIT