title: Oracle Trigger If statement condition not being met somehow?
body: <p>Thanks for reading. I'm currently working on a database of about 10 entities for a hypothetical store. The main entity is therefore Customer_Order and the purpose of this trigger is to check that the Customer's post code is not null when ever a row is inserted or updated in Customer_order. If it is null, the trigger should throw a warning. </p>
  
  <pre><code>CREATE OR REPLACE TRIGGER Check_Order  
  BEFORE INSERT OR UPDATE ON Customer_Order 
  for each row
  DECLARE ShipAddress customer.ship_address.post_code%TYPE;
  BEGIN 
  IF (ShipAddress = '') then 
  RAISE_APPLICATION_ERROR(-20103, 'Shipping Address is empty');
  END IF;
  END; 
  . 
  run
  </code></pre>
  
  <hr>
  
  <p>I know there's no "Else", but I don't have any other actions other than to update the table which it does.
  Don't worry about ShipAddress, I've tried this with simpler attributes and it simply does not trigger. All that happens is that the row will be inserted or updated, so it's not meeting the condition. I've tried all sorts, like "if(Payment_No='PAYM0001') which doesn't work, either. Is it because I'm using for each instead of a Statement level trigger?</p>