类型:休闲拼图尺寸:113M语言:中文评分:10.0标签:立即下载。最近公司的一个项目数据库被转换了,Oracle的数据库被转换成了SQL server(2000或者2005)。一开始,我在网上找了一些资料,找到了一个叫SwisSql的工具。我尝试了一段时间,但没有成功。后来,我被同事提醒。使用SqlServer的导入导出工具,试试看,可以转换。操作步骤如下。需要的环境很简单,就是这台机器可以同时连接到Oracle和SqlServer。注意:不需要为Oracle数据库建立ODBC,但是可以直接连接。需要一个新的SqlServer数据库来加载Oracle数据。以SqlServer2005为例。
l步骤1
打开Sqlserver,如图-1所示,选择目标数据库,右键-任务-导入数据
图1
l步骤2:
选择“导入数据”菜单打开向导,点击“下一步”打开界面,如图2所示
图2
这里解释一下,最好选择“微软面向Oracle的OLE DB提供者”。当您选择另一种方式导入数据时,您将报告错误。
输入服务器名称和用户密码。测试成功后,确保选中“允许保存密码”
l步骤3
这一步是选择目标数据库,如图3所示
图3
第四步
有两种方法可以导入数据。一种方法是直观地选择Db表或视图。另一种方式是通过sql语句,第一种方式通常被选择用于批量导入
图4
l步骤5
这一步是选择我们需要导入的Db对象,如图5所示
图5
这里,如果oracle中表的列数据类型没有匹配成功,可以直接点击“编辑”按钮,直接编辑
选择导入数据库对象后,单击“下一步”或“完成”开始导入。一般来说,如果数据是正常的,不是特殊的甲骨文数据,可以导入。
我来说说手术中遇到的问题,希望能提醒大家。
1.导入Db表后,主键或外键可能会丢失,因此我们需要自己创建主键并编写sql语法来实现它。
2.Oracle中blob或clob类型的数据不能在这里导入,所以我们需要手动编写代码来导入。例如,在表A中,我们可以通过上述方法导入非blog或clob字段的数据,然后编写代码,执行update语句,并将字段值写入其中。
3.如果数据格式不符合要求,也不是不可能。例如,日期类型字段也可以在oracle中存储0200-9-12。导入时,这一行数据将报告错误,因为它不符合日期类型格式,需要调整。
4.当Oracle转换为SqlServer2000或SqlServer2005时,结果是不同的,大家要注意。应该说,2005年比2000年更准确,无论是对于数据还是表格结构。
简而言之,这种导入相对流畅,更重要的是,它相对简单,比使用第三方工具方便得多。所以有需要的朋友推荐这个方法