sql >> Database >  >> RDS >> Oracle

Oracle kan niet updaten naar NULL

Uit uw opmerkingen lees ik dat u een standaardrecord naar uw doeltabel lijkt te willen schrijven, voor het geval de subquery geen records retourneert. Dus de juiste manier om uw vraag te formuleren is het gebruik van een MERGE verklaring als zodanig:

MERGE INTO "SCHEMA1"."CELLS_GLIST" dst
USING (
  -- rephrase your subquery here. This is your "merge data source". The number
  -- of records returned in this subquery will correspond to the number of
  -- affected records in dst
) src
ON (
  -- the missing exists condition here. Everytime this condition matches a record
  -- between dst and src, an UPDATE is performed. Otherwise, an INSERT is
  -- performed
)
WHEN MATCHED THEN UPDATE 
  SET dst."GLIST_VALUE_ID" = src."GLIST_VALUE_ID"
WHEN NOT MATCHED THEN INSERT ("GLIST_VALUE_ID", "USER_ID", "SESSION_ID")
  VALUES (NULL, 1, 123456);

Dit is om je een idee te geven. Ik weet niet precies wat je in detail probeert te bereiken, dus heb ik de subquery's en voorwaarden weggelaten



  1. Ondersteunt SQL Server CLR Integration configuratiebestanden?

  2. Hoe stel ik een volledige datum en tijd SQL in met Java, en niet alleen de datum?

  3. MySQL Auto increment primaire sleutel neemt toe met 10

  4. xampp mysql Kan multi-masterstructuren niet initialiseren