fanfan 发表于 2007-3-27 20:20:04

sybase数据库如何导出成sql,然后转入SQL Server ?

<p>有一个原来的sybase数据库,里面几十个表。如何导出所有表结构和表内容的sql文件呢?<br/>我用那个什么ddl只导出结构没有内容,用bcp只导出了内容没有结构,晕,而且一次只能导出一个表?没有直接的工具可以一下子导出所有表的结构和数据么?</p><p>然后这个sql文件可以直接导入SQL Server里面么?如果不能需要怎么修改呢?谢谢答复</p>

flybean 发表于 2007-3-28 12:51:40

DDLGEN导结构<br/><br/>BCP+简单的SQL即可以完成所有数据的导出<br/><br/>可以考虑使用其它工具,如PB的PIPELINE,MS的DTS<br/>

fanfan 发表于 2007-3-28 15:50:23

<p>能说详细点么?PIPELINE是什么?PB里的工具?我菜单里没有找到。<br/>没有接触过sybase,只是要把原来的sybase的数据表和内容导入到sql server里面。<br/>我在PB里面看到有个database painter,在里面选中一个表,然后菜单export syntax 可以用,我看出来的是sql。但好像只能一个个表,不能整个表一次性都出来么?<br/><br/>我在网上搜到这样的文章</p><p></p><p>PowerBuilder是目前公认的、最佳的数据库前端开发工具之一。在实际开发应用中,经常会遇到修改数据库表结构的情况。用PowerBuilder修改数据库表结构与用Foxbase修改数据库结构不同。在PowerBuilder中,除可以在数据库表结构中添加字段名外,无 <br/>法直接修改数据库表结构,如删除某个字段名或类型或字段名长度等,都会导致数据库表记录的丢失。我们通过实践探索,总结了几 </p><p>种方法仅供大家参考,请大家批评指正。 </p><p>一、 修改数据库表结构,数据库表中没有记录 </p><p>方法1:将表结构以Export Table 文件格式输出。 </p><p>从Database中选择要修改的数据库表Table。 </p><p>从Objects中选择Export Table/View Syntax to Log,取名保存即选Save Log As,以*.sql格式保存。 </p><p>从Objects中选择Database Administration。 </p><p>从File中选择Dos Open,选文件名File name,*.sql,打开进行修改。 </p><p>从Objects中选择Execute SQL。即产生一新的数据库表结构。 </p><p>注意:Table名不要同名。 </p><p>方法2:将表结构以SQL Syntax 文件格式输出。 </p><p>从Database中选择要修改的数据库表Table。 </p><p>按Preview键。 </p><p>从File中选择Save Rows as,File Format 选SQL Syntax,取表名*.sql保存。 </p><p>从File中选择Dos Open,打开表名*.sql,进行修改。 </p><p>取表名后,Execute SQL。 </p><p>注意:此种方法没有生成Primary Key。 </p><p>二、 修改数据库表结构,保存原数据库表中记录 </p><p>方法1:先修改数据库表结构,用SQL语句转移数据库表中记录 </p><p>将表1生成表1.sql,修改结构,将表1另取名为表2。 </p><p>运行表2.sql,生成表2。此时产生一新的数据库表结构。 </p><p>从Objects中选择Database Administration,写SQL Statement: Insert into 新表名select * from 旧表名; Execute SQL。将旧表中所有字段内容转入新表中。 </p><p>删除表1,从File中选择Dos Open,打开文件名File name即表2.sql,将表2统一改为表 </p><p>1。运行表1.sql,生成新结构的表1,此时无记录。 </p><p>按步骤3,将表2中的记录全部转入表1中。 </p><p>  若将部分字段转入,写SQL Statement: </p><p>  insert into 新表名(字段1,字段2......)  </p><p>  select 字段1,字段2......from 旧表名; </p><p>Execute SQL。旧表中部分字段内容转入新表中。 </p><p>方法2:将表结构和记录以SQL Syntax 文件格式输出。 </p><p>从Database中选择要修改的数据库表Table,按Preview键。 </p><p>从File中选择Save Rows as,File Format 选SQL Syntax,取表名*.sql保存。 </p><p>从File中选择Dos Open,打开表名*.sql,进行修改。 </p><p>取表名后,Execute SQL。 </p><p>方法3:将表结构和记录以TXT 文件格式输出。 </p><p>从Database中打开数据库表,按Preview键。 </p><p>从File中选择Save Rows as,File Format 选TXT,取表名*.txt保存。</p><p></p><p>可是我没有在PB里面找到“Objects中选择Export Table/View Syntax to Log” 这样的选项啊 ?我用的是PB10.5 ,难道以前的版本有?那现在跑哪去了呢?</p>

guilber 发表于 2007-3-28 17:40:18

<p>建表结构导到一个文件</p><p>可以用Rapid SQL,PB,PD...</p><p>表数据导出到一个文件</p><p>可以写个sql生成导出语句,然后放到后台导出</p><p>select 'bcp database..'+name+' out '+name+'.txt '+'-Uuser -Ppwd -Sserver -c -t "|"' from sysobjects where type='U'</p>

fanfan 发表于 2007-3-28 17:48:36

<div class="msgheader">QUOTE:</div><div class="msgborder"><b>以下是引用<i>guilber</i>在2007-3-28 17:40:18的发言:</b><br/><p>建表结构导到一个文件</p><p>可以用Rapid SQL,PB,PD...</p><p>表数据导出到一个文件</p><p>可以写个sql生成导出语句,然后放到后台导出</p><p>select 'bcp database..'+name+' out '+name+'.txt '+'-Uuser -Ppwd -Sserver -c -t "|"' from sysobjects where type='U'</p></div><p>谢谢,可能你误解我了。我不是写程序。我的目的只是为了把原来sybase里面的数据结构和内容导出sql,然后再导入sql server。</p><p>我使用过bcp, 这句“'bcp database..'+name+'” 是表示我要一次多个表如 a,b,c 那就是这样写么 “bcp database..a+b+c”?你这句 'bcp database..'+name+' out '+name+'.txt '+'-Uuser -Ppwd -Sserver -c -t "|"' from sysobjects where type='U' 是结构和数据都可以导出来么?</p><p>SQL Server,MySQL 等导出个整个.sql是很容易操作的啊,怎么sybase这么难呢?没个好用的工具么?</p>
[此贴子已经被作者于2007-3-28 17:54:02编辑过]

fanfan 发表于 2007-3-29 09:39:47

<p>我找到PB的PIPELINE了,这个好像也是一个个表的吧?导出结构和内容具体怎么操作呢?</p>
页: [1]
查看完整版本: sybase数据库如何导出成sql,然后转入SQL Server ?

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com