从SQL迁移时在oracle 9i中强制转换

时间:2013-08-27 09:11:36

标签: mysql sql sql-server oracle

现在我将我的系统从SQL迁移到ORACLE 9i。

此处USERID为NUMBER(38)类型   和DATA在SQL中是LONG类型。

我有一个名为:

的表

PEOPLE和DBATABLE,我在oracle中运行以下代码,但发现以下错误... ORA-00932:数据类型不一致:

SELECT P.USERID
FROM PEOPLE P
LEFT OUTER JOIN (
    SELECT data
    FROM DBATABLE
    WHERE Name = 'USER'
) R ON CAST(data AS VARCHAR(50)) = CAST(P.USERID AS VARCHAR(50))
WHERE P.USERLOGID = 1000
    AND R.data IS NULL;

帮助我找到错误。 我错过了某个地方,却找不到我错过的地方。

1 个答案:

答案 0 :(得分:0)

将P.USERLOGID转换为正确的数据类型 - 我几乎肯定它没有迁移到预期的类型。如果这有帮助,请告诉我..谢谢,Brian