gpt4 book ai didi

c - Informix 到 Oracle : Dealing with Fetching Null Values

转载 作者:行者123 更新时间:2023-12-04 10:36:08 25 4
gpt4 key购买 nike

先介绍一下背景。我的公司正在评估我们是否将我们的 Informix 数据库迁移到 Oracle 10g。我们有几个 ESQL/C 程序。我已经通过 Oracle Migration Workbench 运行了一些,并且一直在混淆一些测试。现在我开始意识到一些事情。

首先,我们有根本不处理空值的动态 sql 语句。根据我的阅读,我必须手动修改查询以使用 nvl() 函数或实现指示变量。有人可以确认是否需要手动修改吗?我们必须对转换后的 ESQL/C 程序进行的手动更改越少越好。

其次,我们有几个查询从各种表等中提取日期,在 Informix 中,日期被视为 long 类型,即自 1899 年 12 月 31 日以来的天数。

在 Pro*C 中,日期被选择为什么格式?我知道它不是数字,因为我尝试将日期字段选择到我的长变量中并得到 Oracle 错误,指出“预期的数字但得到了一个日期”。所以我假设我们必须修改我们选择日期字段的方式——要么以转换的方式选择一个日期字段,使其变得很长(即,自 12/31/1899 以来的天数),或者更改主机变量以匹配 Oracle 返回的内容(那是什么,字符串?)。

最佳答案

是的。您将需要按照您的描述修改您的查询。

long 会绊倒你。 long 在 Oracle 中有不同的含义。有一个特定的 DATE 类型。 Generally when selecting one uses the TO_DATE function with a format, to get the result as a VARCHAR2, in exactly the format you want.

关于c - Informix 到 Oracle : Dealing with Fetching Null Values,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/825072/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com