- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用bcp命令实Sybase数据向SQL Server转换
用BCP命令实现Sybase数据
向SQL Server的转换
BCP命令是SQL Server和Sybase用来备份和恢复数据用的工具,它使用方便,备份、恢复速度快。在SQL Server中和在Sybase中使用bcp命令,语法格式相似。因此,实践中审计人员在对Sybase数据库数据进行采集转时,可以考虑先用bcp命令将Sybase数据库数据以文本格式导出,再用bcp命令将由Sybase导出的文本格式文件导入到SQL Server数据库。
值得注意的是:在同一机器中如果同时安装了SQL Server和Sybase后,用bcp命令对SQL Server数据库或Sybase数据库进行导入导出操作时,常会出现如下错误:
1、对SQL Server数据库进行bcp操作可能出现的错误:
2、对Sybase 数据库进行bcp操作可能出现的错误:
这是由于在同一台机器上安装SQL Server和Sybase后,环境变量变了,在执行bcp命令时,系统找到的不是对应的bcp。解决问题的方法是:用bcp命令对SQL Server 数据库进行导入导出操作时,就将SQL Server对应的环境变量提前;用bcp命令对Sybase数据库进行导入导出操作时,就将Sybase对应的环境变量提前。设置过程如下:
我的电脑→属性→高级→环境变量
双击系统变量path,进入“编辑系统变量”,复制变量值粘贴到到一个空记本事,选定要提前的内容,复制、粘贴到最前面,再将修改后的内容全部复制、粘贴回变量值,点击“确定”保存设置(如不能立即生效,则重启机器)。
下面以转换某县社保部门Sybase数据库备份数据为例(**.dat格式),说明转换过程:
一、安装Sybase,在Sybase中新建一个为zysb的数据库(用户sa ,密码为空),在该数据中还原Sybase备份数据(备份数据存放位置为f:\zysb.dat),还原过程命令格式为:
C:\Documents and Settings\Administratorisql -Usa -P
1 load database zysb from f:\zysb.dat
2go
1 online database zysb
2go
二、在SQL Server中新建一个数据库,为方便导入也命名为zysb,打开该SQL Server数据库。
三、进入Sybase Central(开始→程序→Sybase→Sybase Central),打开zysb数据库,选定所有表,右击鼠标,点击Generate DDL→Create Tabale DDL。
随即会生成创建所选定表的脚本,点击“搜索→查找/替换”,将“lock allpages”全部替换成空,接着将“ on default ”替换成“ON [PRIMARY]”(也就是将Sybase建表脚本转换成SQL Server建表脚本),复制结果粘贴到SQL Server数据库zysb中执行,即可完成在SQL Server数据库zysb中建表工作。
四、进入Sybase Advantage(开始→程序→Sybase→Sybase Advantage),联接zysb数据库,输入如下脚本执行:
select bcp zysb..+name+ out f:\zysbtxt\+name+.txt+ -Usa -P -c -b5000 from sysobjects where type=U and name not like #%
将其执行结果存为bcpout.bat批处理文件。运行文件(双击该文件),执行过程如下图:
即用bcp命令批量导出Sybase数据库zysb的用户表,以文本格式保存在F:\zysbtxt文件夹中,完成导出后的结果如下图所示:
五、再次在Sybase Advantage输入如下脚本执行(在SQL Servr完成zysb数据库建表工作后,也可以直接在SQL Servr查询分析器中执行):
select bcp zysb.dbo.+name+ in f:\zysbtxt\+name+.txt+ -T -c -b5000 -SWWW-QBHIV49C8C7\JHAfrom sysobjects where type=U and name not like #%
(WWW-QBHIV49C8C7为服务器名,本例为机器名,JHA为实例名,导入到SQL Servr中的默认实例可不用设置“-S”参数)
将执行结果保存为一个名为bcpin.bat的批处理文件,运行批处理文件,即可将保存在f:\zysbtxt文件夹中的文本文件导入到SQL Servr数据库zysb中,运行过程如下图示:
采集转换到SQL Serv
文档评论(0)