如何将sqlserver2000的数据库转换成oracle9i的数据库,包括表和试图,主要现在是存储过程部分的转换?
开源的例子的代码在http://www.51aspx.com/TangCompany-1.html上面,点击“立即下载即可”我采用了两种方法进行数据库的转换
(一)用了一个网上说的转换工具mss2orad.exe,进行了sqlserver到oracle的转换,
但是现在只是把相关的表到了过去,对应的存储过程并没有到过来
我自己重新写存储过程,又遇到了关于sqlserver转换过来到oracle的数据库的表带了“”的问题
sqlserver对应的存储过程:
CREATE PROCEDURE dbo.SelectNew_Affiche
AS
SELECT Id,Name,NewTime FROM [New] WHERE Types=0 AND Vis=1
GO
oracle转化过来的存储过程:
create or replace procedure SelectNew_Affiche is
begin
select Id,Name,NewTime from "New" WHERE Types=0 AND Vis=1; //写成的方法1 (方法均报错)
select Id,Name,NewTime from "New" WHERE new.Types=0 AND new.Vis=1; //写成的方法2(方法均报错)
end SelectNew_Affiche ;
(二)采用了sqlserver2000的数据库导入导出功能
在按照一步一步走下去,并设定好我的目标数据库oracle后,到最后一步选定全表的时候,总是报这个错误:DTS 导入/导出向导错误 发生意外错误。提供程序返回了一个错误的结果,但未给出错误信息。
导致不能成功导入
请各位大哥帮忙看看,有什么解决办法没? --------------------编程问答-------------------- Oracle的存储过程里选择数据集出来不能直接用Select,需要打开一个游标,ref cursor类型的东西,使用out类型的参数将选择的结果返回出来。
最好是将存储过程全部写入到 Package 中,这样便于管理。
不要指望有工具可以一把将MS SQL 转换为 Oracle,代码不修改几乎是不可能的。
导入数据错误的问题,可以换一个Oracle的驱动程序试试看。MS 的数据提供程序,或者是 Oracle 自带的Oledb驱动程序,应该有一个是可行的。 --------------------编程问答-------------------- 从实际的情况来看,一般转化成功的很少,如果很多过程的话
补充:.NET技术 , ASP.NET