FreeTDS(February 24, 2006)

NAME
defncopy - extract procedures and views from a Microsoft server.

SYNOPSIS
defncopy [-U username] [-P password] [-S server] [-D database]
[-i input_file] [-o output_file] [-v]
[owner.]object_name [[owner.]object_name...]

DESCRIPTION
defncopy is a utility program distributed with FreeTDS. It replaces a similar program of the same name distributed by Sybase.

defncopy reads the text of a stored procedure or view, and writes a script suitable for recreating the procedure or view. For tables, it reads the output of sp_help and constructs a CREATE TABLE statement, complete

with CREATE INDEX, too.
    It does not create primary keys (although it could, patches welcome).

defncopy makes use of the db-lib API provided by FreeTDS. This API is of course also available to application developers.

OBJECTS

owner
    is optional if you or the database owner is the owner of the procedure/view being copied.

object_name
    is the name of the system object you wish to extract.

OPTIONS

-U username
    database server login name.

-P password
    database server password.

-S server
    database server to which to connect.

-D database
    database to use. Optional if the procedure/view being extracted is in your default database.

-i input_file
    a script to apply to the database. Not currently implemented.

-o output_file
    a file to hold the script, defaults to standard output.

-v  Show version information and copyright notice.

NOTES
defncopy is a filter; it reads from standard input, writes to standard output, and writes errors to standard error. The -i and -o options override these, of course.

EXIT STATUS
defncopy exits 0 on success, and >0 if the server cannot process the query.

defncopy will report any errors returned by the server, but will continue processing.

HISTORY
defncopy first appeared in FreeTDS 0.63.

AUTHORS
The defncopy utility was written by James K. Lowden <jklowden@schemamania.org>

BUGS
Works only with Microsoft servers and ancient Sybase servers.

Many options are defined by Sybase that this version does not implement. Feel free to correct this situation.

In theory, defncopy could apply/produce DDL for any system object, but at present only tables, procedures and views are supported, and only for extraction.