Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

केवल डेटाबेस उच्च होने पर sysdate को हटाने की प्रक्रिया

इस शर्त को आप प्रक्रिया की शुरुआत में निम्नानुसार जोड़ सकते हैं -

PROCEDURE Remove_Customer(Customer_Id VARCHAR2) IS
  l_Order_Date DATE;
BEGIN
  BEGIN
    SELECT MAX(Delivery_Date)
      INTO l_Order_Date
      FROM Placed_Order
     WHERE Placed_Order.Fk1_Customer_Id = Customer_Id;
  EXCEPTION
    WHEN OTHERS THEN
      l_Order_Date := SYSDATE - 1;
  END;
  IF l_Order_Date < SYSDATE THEN
    DELETE FROM Order_Line
     WHERE Order_Line.Fk1_Order_Id IN
           (SELECT Order_Id
              FROM Placed_Order
             WHERE Placed_Order.Fk1_Customer_Id = Customer_Id);
    DELETE FROM Placed_Order
     WHERE Placed_Order.Fk1_Customer_Id = Customer_Id;
    DELETE FROM Customer WHERE Customer.Customer_Id = Customer_Id;      
    --Total_Customers := Total_Customers - 1; -- is it a global variable in the package?
  ELSE
    Dbms_Output.Put_Line('Customer currently has a order been delivered');
  END IF;
END;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. यूनियन क्लॉज का उपयोग करके चुनें

  2. LIKE (SQL) के साथ तालिकाओं में शामिल होना

  3. Oracle संग्रहीत कार्यविधि में त्रुटि संदेश लॉग करें

  4. Oracle क्वेरी .NET ऐप से धीमी (या विफल) है लेकिन SQL डेवलपर से तेज़ है

  5. Oracle:केवल स्कीमा निर्यात करना