Giter Site home page Giter Site logo

scheme2ddl's Introduction

Download   Build Status   Coverage Status

scheme2ddl is command line util for export oracle schema to set of ddl scripts. Provide a lot of configurations via basic command line options or advanced XML configuartion.

scheme2ddl is part of oracle-ddl2svn project.

Benefits

scheme2ddl give ability to filter undesirable information, separate DDL in different files, pretty format output.

How to start with minimal configuration

Java must be installed on your computer.

For exporting oracle scheme you must provide

  • DB connection string
  • output directory

Usage example. Command

java -jar scheme2ddl.jar -url scott/tiger@localhost:1521:ORCL -o C:/temp/oracle-ddl2svn/

will produce directory tree

 views/
       view1.sql
       view2.sql
 tables/
       table1.sql
 functions
      /f1.sql  

More command line options

java -jar scheme2ddl.jar -help
...
    Options: 
      -help, -h                  print this message
      -url,                      DB connection URL
                                 example: scott/tiger@localhost:1521:ORCL
      -o, --output,              output dir
      -p, --parallel,            number of parallel thread (default 4)
      -s, --schemas,             a comma separated list of schemas for processing
                                 (works only if connected to oracle as sysdba)
      -c, --config,              path to scheme2ddl config file (xml)
      -f, --filter,              filter for specific DDL objects
                                 every LIKE wildcard can be used
      -tf, --type-filter,        filter for specific DDL object types
      -tfm, --type-filtermode,   mode for type filter: include(default) or exclude
      --stop-on-warning,         stop on getting DDL error (skip by default)
      -rsv,                      replace actual sequence values with 1 
      --replace-sequence-values, 
      -tc,--test-connection,     test db connection available
      -version,                  print version info and exit

On Unix platform you can run scheme2ddl.jar as executable file:

chmod +x scheme2ddl.jar
./scheme2ddl.jar 

How it is work inside?

  1. First, get list of all user_object to export
`select * from user_objects`
  1. then applying dbms_metadata.set_transform_param
  2. for every user object invoke dbms_metadata.get_ddl and dbms_metadata.get_dependent_ddl
  3. print every ddl to separate file grouped in folders like tables, views, procedures etc

scheme2ddl build on top of spring-batch framework.

scheme2ddl's People

Contributors

qwazer avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.