sql-server - 从 SQL Server 导出表以导入到 Oracle 10g

标签 sql-server oracle migrate

我正在尝试从 SQL Server 2005 导出一些表,然后创建这些表并在 Oracle 中填充它们。

我有大约 10 个表,从 4 列到 25 列不等。我没有使用任何约束/键,所以这应该是相当直接的。

首先我生成脚本来获取表结构,然后修改它们以符合Oracle语法标准(即将nvarchar更改为varchar2)

接下来,我使用 SQL Servers 导出向导导出了数据,该向导创建了一个 csv 平面文件。但是我的主要问题是我找不到强制 SQL Server 双引号列名的方法。我的一个列包含逗号,所以除非我能找到一种 SQL 服务器引用列名的方法,否则在导入它时我会遇到麻烦。

另外,我是走艰难的路线,还是有更简单的方法来做到这一点?

谢谢

编辑:通过引用我指的是引用 csv 中的列值。例如,我有一列包含地址,如

101 High Street, Sometown, Some county, PO5TC053



不改成下面这样,加载CSV时会出现问题

"101 High Street, Sometown, Some county, PO5TC053"

最佳答案

在查看了 SQLDeveloper 的一些选项后,或者手动尝试导出/导入后,我在 SQL Server management studio 上找到了一个实用程序,它可以获得所需的结果,并且易于使用,请执行以下操作

  • 转到 SQL Server 上的源架构
  • 右键单击 > 导出数据
  • 选择源作为当前架构
  • 选择目标为“Oracle OLE 提供者”
  • 选择属性,然后在第一个框中添加服务名称,然后是用户名和密码,一定要点击“记住密码”
  • 输入查询以获取要迁移的所需结果
  • 输入表名,然后单击“编辑”按钮
  • 更改映射,将 nvarchars 更改为 varchar2,将 INTEGER 更改为 NUMBER
  • 运行
  • 对剩余的表重复此过程,如果以后需要再次执行此操作,请另存为作业
  • 关于sql-server - 从 SQL Server 导出表以导入到 Oracle 10g,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1728694/

    相关文章:

    ssh - 将OpenNebula数据存储区从本地FS迁移到NFS的提案

    当使用窗口函数并且谓词包含变量时,SQL Server 使用扫描而不是搜索

    sql-server - 如何使 SSDT Profile.xml SqlCmdVariable 为空字符串或可选

    oracle - 如何在 Go 语言中从 Oracle(长原始格式)读取图像

    Oracle 绑定(bind)变量 - 请求查询

    sql - 将 Unixtime 转换为日期时间 SQL (Oracle)

    python - 尽管迁移已成功完成,但 Admin 或 Api 没有发生任何更改

    sql - SQL Server 中的 UTC 和偏移日期时间比较

    sql-server - 查询过去 5 个月内天数的日期维度

    mysql - 添加外键后 Django 迁移出现 "unknown column"错误