将您的数据从 MS SQL Server 7 转换为 PostgreSQL 7.1.x

来自 PostgreSQL wiki
跳转到导航跳转到搜索


此页面包含历史信息或已弃用文章


作者 Ryan C. Bonham <[email protected]> v1.00,最后更新于 2002 年 1 月 5 日

先决条件

  • MS SQL 7(当然)
  • RedHat Linux 7.1
  • PostgreSQL 7.1 RPM
  • PostgreSQL ODBC 客户端


说明

按照以下步骤将您的 Microsoft SQL Server 7 数据转换为 PostgreSQL。

从您的 Redhat 机器上

  • 以 root 身份创建一个 postgres 用户。
adduser postgres
  • 在您的机器上安装 PostgreSQL RPM。
  • 首次启动 PostgreSQL。
service PostgreSQL start
  • 将 PostgreSQL 设置为在系统启动时运行。
chkconfig --add PostgreSQL
  • 以 Postgres 用户身份登录
su postgres
  • 创建一个空白数据库
createdb Databasename


从您的 SQL 7 服务器或安装了 SQL 管理工具的机器上

  1. 安装 PostgreSQL ODBC 驱动程序
  2. 创建一个新用户或系统 DSN(数据源)
    在 Windows 2000 中,您可以在“管理工具”控制面板中找到它
    1. 当提示选择要使用的驱动程序时,选择“PostgreSQL”。
    2. 对于数据源,输入您想为此连接提供的名称。(例如,Pgsql)
    3. 对于数据库,输入您在步骤 6 中使用的名称
    4. 对于服务器,输入 PostgreSQL 数据库服务器的 IP 或名称
    5. 将用户名和密码留空
    6. 在驱动程序选项下,选择“解析语句”并取消选中“将布尔值作为字符”。
    7. 在“数据源”选项下,选择“行版本控制”。
  3. 打开 SQL 7 企业管理器
  4. 展开您的服务器并选择“数据转换服务”。
  5. 打开“本地包”。
  6. 从操作菜单中选择新建包
  7. 从数据菜单中选择“Microsoft OLE DB Provider for SQL Server”。
    1. 选择要导出的 SQL Server 和数据库,然后按确定
  8. 从数据菜单中选择“其他连接”。
    1. 对于数据源,选择“PostgreSQL”。
    2. 选择我们上面创建的 DSN(Pgsql)。
    3. 输入您的用户名(postgres)。
  9. 选择您刚刚创建的两个连接。
  10. 从工作流菜单中选择“添加转换”。
  11. 双击刚刚创建的转换线。
    1. 选项卡上,选择要导出的表。
    2. 在目标选项卡上,选择创建新
    3. 检查数据类型和列长度。进行任何更正,然后按确定。
    4. 在转换屏幕上,确保源列指向正确的目标列。您可以通过选择相应的列并使用屏幕上的删除和插入按钮来更改列映射。
    5. 检查高级选项卡上的选项。您无需进行更改。
    6. 按确定。
  12. 从包菜单中选择保存
  13. 从包菜单中选择运行
  14. 您的数据现在应该导出。如果您遇到任何错误,请仔细检查您在步骤 11 中创建的表的數據类型和长度是否正确。