Announcement

Collapse
No announcement yet.

ORA-00904 beim Ergänzen eines Materialized Views

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • ORA-00904 beim Ergänzen eines Materialized Views

    Ich habe das folgende Problem:

    Ich wollte einen Materialized View (MV) um eine Spalte erweitern.

    Also in Toad das Script des MV in den SQL-Editor gestellt, den MV gedropt und
    im Create-statement die neue Spalte (TOCCID) den SELECTs zugefügt:
    [highlight=sql]
    CREATE MATERIALIZED VIEW EXTERNAL_RESULTS_MV
    TABLESPACE USERS
    NOCACHE
    NOLOGGING
    NOPARALLEL
    REFRESH COMPLETE
    START WITH TO_DATE('24-Aug-2007','dd-mon-yyyy')
    NEXT TRUNC(SYSDATE) + 1
    AS
    SELECT AV.ID,'AB' RESULTSOURCE, NVL(S.ID, -2) SAMPLE_ID, NVL(S.NAME, SAMPLE_NAME||' ( external )') SAMPLE_NAME, Format_Iso_Number(ISOLATE) ISOLATE_NUMBER, EXPERIMENT_DATE,
    NVL(O.ID, -2) OPERATOR_ID, NVL(O.TEXT, OPERATOR) OPERATOR, RESULT, UNIT, RESULT_TYPE,
    Is_Result_Reportable(RESULTSTATUS, TESTSTATUS) RESULT_REPORTABLE, RESULTSTATUS||'; '||TESTSTATUS STATUS, WELL_NO REPLICATE_NO,
    COMPOUNDS, AV.COMMENTARY, 1 DIGITALS, AV.TOCCID
    FROM SAMPLE S, OPERATOR o, PYRO_RESULTS_VIEW@LINK AV
    WHERE AV.SAMPLE_NAME LIKE S.NAME (+)
    AND AV.OPERATOR LIKE O.ACRONYM (+)
    UNION
    SELECT AV.ID,'AB', NVL(S.ID, -2), NVL(S.NAME, SAMPLE_NAME||' ( external )'), Format_Iso_Number(ISOLATE), EXPERIMENT_DATE,
    NVL(O.ID, -2), NVL(O.TEXT, OPERATOR), RESULT, UNIT, RESULT_TYPE,
    Is_Result_Reportable(RESULTSTATUS, TESTSTATUS), RESULTSTATUS||'; '||TESTSTATUS, WELL_NO, COMPOUNDS, AV.COMMENTARY, 3, AV.TOCCID
    FROM SAMPLE S, OPERATOR o, EC50_RESULTS_VIEW@LINK AV
    WHERE AV.SAMPLE_NAME LIKE S.NAME (+)
    AND AV.OPERATOR LIKE O.ACRONYM (+);
    [/highlight]
    Beim Ausführen wird dann ORA-00904 Ungültiger Spaltenname geworfen.

    Wenn ich die SELECT-Statements einzeln ausführe, scheint keine Fehler aufzutreten.

    Hat irgendjemand eine Idee, wo der Fehler liegen könnte ?
    Zuletzt editiert von Falk Prüfer; 29.08.2007, 08:58. Reason: Highlighting hinzugefügt

  • #2
    RE: ORA-00904 beim Ergänzen eines Materialized Views

    Wenn ich mich nicht verzählt habe, hast du einmal 18 und das andere mal 19 Felder Selektiert:
    [highlight=sql]
    SELECT AV.ID,
    'AB' RESULTSOURCE,
    NVL(S.ID, -2) SAMPLE_ID,
    NVL(S.NAME, SAMPLE_NAME||' ( external )') SAMPLE_NAME,
    Format_Iso_Number(ISOLATE) ISOLATE_NUMBER,
    EXPERIMENT_DATE,
    NVL(O.ID, -2) OPERATOR_ID,
    NVL(O.TEXT, OPERATOR) OPERATOR,
    RESULT,
    UNIT,
    RESULT_TYPE,
    Is_Result_Reportable(RESULTSTATUS, TESTSTATUS) RESULT_REPORTABLE,
    RESULTSTATUS||'; '||TESTSTATUS STATUS,
    WELL_NO REPLICATE_NO,
    COMPOUNDS,
    AV.COMMENTARY,
    1 DIGITALS,
    AV.TOCCID
    FROM SAMPLE S,
    OPERATOR o,
    PYRO_RESULTS_VIEW@LINK AV
    WHERE AV.SAMPLE_NAME LIKE S.NAME (+)
    AND AV.OPERATOR LIKE O.ACRONYM (+)
    UNION
    SELECT AV.ID,
    'AB',
    NVL(S.ID, -2),
    NVL(S.NAME,
    SAMPLE_NAME||' ( external )'),
    Format_Iso_Number(ISOLATE),
    EXPERIMENT_DATE,
    NVL(O.ID, -2),
    NVL(O.TEXT,
    OPERATOR),
    RESULT,
    UNIT, RESULT_TYPE,
    Is_Result_Reportable(RESULTSTATUS, TESTSTATUS),
    RESULTSTATUS||'; '||TESTSTATUS,
    WELL_NO,
    COMPOUNDS,
    AV.COMMENTARY,
    3,
    AV.TOCCID
    FROM SAMPLE S,
    OPERATOR o,
    EC50_RESULTS_VIEW@LINK AV
    WHERE AV.SAMPLE_NAME LIKE S.NAME (+)
    AND AV.OPERATOR LIKE O.ACRONYM (+);[/highlight]
    Zuletzt editiert von Falk Prüfer; 29.08.2007, 08:58. Reason: Highlighting hinzugefügt

    Comment

    Working...
    X