defncopy(1) extract procedures and views from a Microsoft server.


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


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.


is optional if you or the database owner is the owner of the procedure/view being copied.
is the name of the system object you wish to extract.


-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.
Show version information and copyright notice.


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.

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


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.


defncopy first appeared in FreeTDS 0.63.


The defncopy utility was written by James K. Lowden <[email protected]>


Works only with Microsoft servers and ancient Sybase servers.

Does not create primary keys.

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.