win1如何找到ie图标:sybase数据库导出表结构

来源:百度文库 编辑:偶看新闻 时间:2024/04/27 20:07:43

   在不同平台上导数据时,只能用BCP命令,但是BCP命令不能导出数据库表结构,所以需进行数据库表结构的导出。在sybase12.5版本以上,可以用如下方式导出表结构:ddlgen –Usa –Pxxx –Ddb_name –Sxxx:port –Ooutput_file其中db_name指所要导出的数据库名。********************************************低于sybase12.5版本的,得进行执行脚本的方式导出表结构。脚本文件内容如下:use sybsystemprocsgoif object_id('dbo.sp_ddl_create_table') is not nulldrop procedure sp_ddl_create_tableprint "Dropping sp_ddl_create_table"gocreate proc sp_ddl_create_tableas-- Creates the DDL for all the user tables in the-- current databaseselect right('create table ' + so1.name + '(' + '', 255 * ( abs( sign(sc1.colid - 1) - 1 ) ) )+sc1.name + ' ' +st1.name + ' ' +substring( '(' + rtrim( convert( char, sc1.length ) ) + ') ', 1,patindex('%char', st1.name ) * 10 ) +substring( '(' + rtrim( convert( char, sc1.prec ) ) + ', ' + rtrim(convert( char, sc1.scale ) ) + ') ' , 1, patindex('numeric', st1.name ) * 10 ) +substring( 'NOT NULL', ( convert( int, convert( bit,( sc1.status & 8 ) ) ) * 4 ) + 1,8 * abs(convert(bit, (sc1.status & 0x80)) - 1 ) ) +right('identity ', 9 * convert(bit, (sc1.status & 0x80)) ) +right(',', 5 * ( convert(int,sc2.colid) - convert(int,sc1.colid) ) ) +right(' )' + 'go' + '' + '', 255 * abs( sign( ( convert(int,sc2.colid) - convert(int,sc1.colid) ) ) -1 ) )from sysobjects so1,syscolumns sc1,syscolumns sc2,systypes st1where so1.type = 'U'and sc1.id = so1.idand st1.usertype = sc1.usertypeand sc2.id = sc1.idand sc2.colid = (select max(colid)from syscolumnswhere id = sc1.id)order by so1.name, sc1.colidgoif object_id('dbo.sp_ddl_create_table') is not nullbegingrant execute on sp_ddl_create_table to publicprint "Created sp_ddl_create_table"endelseprint "Failed to create sp_ddl_create_table"go**************************************************************查看具体某数据库表结构方法如下,以查看nbcredit数据库表结构为例:编辑脚本文件script.txt,保存在c:\,内容如下:use nbcreditgosp_ddl_create_tablego然后执行以下语名:isql –Usa –Pxxx –b –i script.txt –o scriptout.txt其中scriptout.txt文件的内容即为整个数据库表结构。