我在創建視圖時遇到問題,sql 查詢從創建視圖窗格成功測驗,如右窗格所示

Oracle 給我一個無效的識別符號,但 oracle 沒有指向查詢的哪個部分

uj5u.com熱心網友回復:
您的示例可以簡化為:
CREATE VIEW test AS
SELECT (SELECT 2 FROM DUAL) - (SELECT 1 FROM DUAL)
FROM DUAL;
失敗,因為 Oracle 不知道視圖生成的列的名稱,而 SQL Developer 試圖通過將默認別名復制到簽名中來自動生成 SQL:
CREATE VIEW test( (SELECT2FROMDUAL)-(SELECT1FROMDUAL) ) AS
SELECT (SELECT 2 FROM DUAL) - (SELECT 1 FROM DUAL)
FROM DUAL;
這是一個無效的識別符號。
為查詢中的列設定識別符號:
CREATE VIEW test AS
SELECT (SELECT 2 FROM DUAL) - (SELECT 1 FROM DUAL) AS value
FROM DUAL;
或在簽名中:
CREATE VIEW test(value) AS
SELECT (SELECT 2 FROM DUAL) - (SELECT 1 FROM DUAL)
FROM DUAL;
小提琴
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/532686.html
標籤:sql甲骨文sql-视图
