(转发)近期为公司的一个项目数据库进行了转换,将Oracle的Db转换为SqlServer(2000或2005均可),一开始在网上找了一些资料,发现有个工具叫SwisSql的,尝试了一下,没成功,继续查找.后来经同事提醒,使用SqlServer的导入和导出工具,尝试一下,确实可以转换.操作步骤如下所述.

  所需要的环境比较简单,就是本机可以同时连接Oracle和SqlServer即就,注意:这里不必为Oracle数据库建立ODBC,采用直连方式即可,需要新建一个SqlServer数据库,用于加载Oracle的数据.下面以SqlServer2005为例

  步骤1

  打开Sqlserver,如图-1,选中目标数据库,右键->任务->导入数据

  

图-1

  步骤2:

  选择”导入数据”菜单,会出现向导,点击下一步,出现如图-2所示界面

  

图-2

  这里要说明下,最好选择”MicroSoft OLE DB Provider for Oracle方式,选择另外一种方式导入数据时会报错.

  输入服务器名称和用户密码,测试成功后,一定要勾选”允许保存密码”

  步骤3

  此步骤就是选择目标数据库,如图-3所示

  

图-3

  步骤4

  导入数据有两种方式,一种方式是可视化选择Db表或视图;另一种方式是通过sql语句实现,一般批量导入选择第一种方式

  

图-4

  步骤5

  此步骤就是选择我们需要导入的Db对象,如图-5所示

  

图-5

  这里说明一下,如果oracle中表的列数据类型没有匹配成功,可以直接点击”编辑”按钮,直接编辑即可

  选择好导入Db对象以后,点击”下一步”或”完成”,就开始导入.一般来说,如果数据比较正常,不是特殊的Oracle数据,都是可以导入的.

  下面说下我操作过程中遇到的问题,希望给大家有所提醒

  1. 导入以后的Db表,可能主键或外键会丢失,需要我们自己去创建主键,自己写sql语法实现就好了.

  2. Oracle中blob或clob类型的数据,在此处是无法导入的,需要我们手工写代码导入.比如表A,我们可以先用上述方法将非blog或clob字段的数据导进来,然后写代码,执行update语句,将字段值写入其中即可

  3. 如果数据格式不符合条件,也不是不可以的,比如日期型字段,oracle中可能这样也会存储0200-9-12,导入时这行数据就会报错,因为不符合日期类型格式,需要调整.

  4. Oracle转换至SqlServer2000或SqlServer2005,所产生的结果是不一样的,这个大家要注意.应该说,2005比2000要更加精确,无论是对数据还是对表结构

  总之,这次导入还是比较顺利的,更重要的是比较简单,比使用第三方工具要方便很多,因此,有些需求的朋友推荐此方法

将Oracle数据库转换为SQL Server的更多相关文章

  1. Oracle 数据库和Sql Server数据库的区别

    Oracle数据库的访问方式,和SqlServer数据库是有很大差别的,下面用图来说明: 1.Sql Server数据库 SqlServer数据库的访问方式,大致是:假设用户通过sa登录SqlServ ...

  2. 你肯定不知道的oracle数据库和sql server的这些区别

    它们两者之间的区别主要体现在六大方面: 一是开放性. 1.SQL Server 只可在windows上运行,缺乏开放性,操作系统的稳定对数据库是非常重要的. Windows9X系列产品比较偏重于桌面应 ...

  3. 使用navicat premium将数据库从Oracle迁移到SQL Server,或从Oracle迁移到MySQL

    有时候我们有迁移数据库的需求,例如从Oracle迁移到SQL Server,或者从MySQL迁移到Oracle. 很多江湖好汉一时不知如何手工操作,所幸的是Navicat提供了迁移的自动化操作界面. ...

  4. 怎么将数据库从Oracle迁移到SQL Server,或从Oracle迁移到MySQL

    有时候我们有迁移数据库的需求,例如从Oracle迁移到SQL Server,或者从MySQL迁移到Oracle. 很多江湖好汉一时不知如何手工操作,所幸的是Navicat提供了迁移的自动化操作界面. ...

  5. [PowerDesign]将数据库从SQL Server数据库转换为MySQL

    原文:[PowerDesign]将数据库从SQL Server数据库转换为MySQL 一.迁移Database Schema. 首先使用Sybase Powerdesigner的逆向工程功能,逆向出S ...

  6. Oracle、Microsoft SQL Server、Mysql

    数据库对比.----1.Oracle:最贵,功能最多,安装最不方便,Oracle环境里的其他相关组件最多,支持平台数量一般,使用中等方便,开发中等方便,运维中等方便,不开源,速度最慢,最安全.---- ...

  7. 搜索表字段包含某字符串的SQL和监控Oracle数据库的SQL。

    1.第一个SQL 背景:需要找到SQL Server数据库中,包含某个字符串的表,输出表和包含该字符串的列. )='=' --这里填要搜索的字符串 DECLARE @sql NVARCHAR(MAX) ...

  8. Oracle临时表和SQL Server临时表的不同点对比

    文章来源:http://www.codesky.net/article/201109/141401.html 1.简介 Oracle数据库除了可以保存永久表外,还可以建立临时表temporary ta ...

  9. Oracle GoldenGate for Sql Server连接ODBC失败的处理方法

    Oracle GoldenGate for Sql Server连接oracle数据库的时候还是比较容易的,命令行下面只要: GGSCI> dblogin useridalias [ alias ...

随机推荐

  1. 具有SSM框架的CRUD与多条件查询

    概述 居于ssm版本的crud跟多添加查询, 并带分页的demo 详细 代码下载:http://www.demodashi.com/demo/13653.html 一.功能展示 部门CRUD: 员工C ...

  2. Linux 内核源码情景分析 chap 2 存储管理 (四)

    物理页面的使用和周转 1. 几个术语 1.1 虚存页面 指虚拟地址空间中一个固定大小, 边界与页面大小 4KB 对齐的区间及其内容 1.2 物理页面 与虚存页面相对的, 须要映射到某种物理存储介质上面 ...

  3. 【CentOS6.5】MySQL安装和配置

    1./etc/my.cnf 这是mysql的主配置文件 2.数据存放位置 3.错误存放位置

  4. Sphinx高亮显示关键字

    选取程序中使用的一部分代码: public function buildExcerptRows($ids) { $options = array( 'before_match' => '< ...

  5. centos7 配置PPTP、L2TP、IPSec服务

    首先,推荐跑下面的脚本: https://github.com/BoizZ/PPTP-L2TP-IPSec-VPN-auto-installation-script-for-CentOS-7 这个脚本 ...

  6. Sql server注入简单认识

    登录界面常常会涉及到敏感关键字的注入 为了对应面试,再看一下 怎样防止注入, 可以过滤SQL需要参数中的敏感字符(忽略大小写) public static string Split(string in ...

  7. COM方式实现C++调用C#代码的一些总结

    首先这个测试没成功,只在本机上可行,在不同机器上测试失败.可能是GUID不对或者没注册成功. 既然已经花了一上午时间去研究,还是总结一下 1.网上说要创建一个snk证书,但不创建也可以.只不过不能放入 ...

  8. Atitit.软件GUI按钮与仪表盘(01)--报警系统--

    Atitit.软件GUI按钮与仪表盘(01)--报警系统-- 1. 温度报警区(鲁大师,360taskman) 1 2. os-区-----cpu_mem_io资源占用监测 1 3. Vm区 1 4. ...

  9. 以byte方式讀取SPD的數據(SMBus Controller在PCH中)

    Reading A Byte of SMBus EEPROM DataThe following steps have to be followed for the System BIOS to re ...

  10. 56. Two Sum【easy】

    Given an array of integers, find two numbers such that they add up to a specific target number. The ...