文章来自:http://yunnet23.spaces.live.com/blog/cns!6F4CA9556201FCB9!122.entry
包括两个方面:数据库结构的迁移(如表结构、视图、触发器等)和数据的迁移
操作步骤如下:
1、利用工具(SYBASE自带工具或第三方工具)生成以下脚本备用:
createusetye、createtable、createview、createprocedure、
dropindex、createindex、droptrigger、createtrigger
2、执行如下SQL语句,并将生成的结果保存到文件bcpout.bat
select "bcp DBNAME.."+name+" out "+name+".bcp -Usa -Ppassword
-Sservername -c" from sysobjects
where type ="U" order by name
3、分别执行下面两个SQL语句,将生成的结果保存到文件bcpin1.bat和bcpin2.bat
select "bcp DBNAME.."+name+" in "+name+".bcp -Usa -Ppassword
-Sservername -c -E" from sysobjects
where type ="U" and sysstat2&64>0 order by name
(生成有IDENTITY字段的表的导入语句)
select "bcp DBNAME.."+name+" in "+name+".bcp -Usa -Ppassword
-Sservername -c " from sysobjects
where type ="U" and sysstat2&64<=0 order by name
(生成无IDENTITY字段的表的导入语句)
4、执行bcpout.bat中的批命令(windows环境在命令行下执行abc.bat > temp.txt)
则可BCP出所有表的数据。
5、在新平台下新建数据库并依次执行createusetye、createtable、createview、
drop index、drop trigger
6、确定如下设置打开
sp_dboption this4,"select into/bulkcopy/pllsort",True
go
checkpoint
go
7、执行bcpin1.bat和bcpin2.bat脚本,完成数据导入。
8、执行createindex、droptrigger、createprocedure
9、恢复设置
sp_dboption this4,"select into/bulkcopy/pllsort",False
go
checkpoint
go
说明:第6步的设置,以及drop index和drop trigger是为了确保采用快速BCP模式。