2017-04-07 40 views
0

我對mySQL中的存儲過程相當陌生,而且我一直在分配我的一些作業。 它要求我在我的數據庫中接受cust_code作爲過程參數,然後它將使用cust_code刪除所述客戶。 然後它將刪除表格'發票','行'中與該客戶有關的所有行。如何在mySQL中創建存儲過程

+0

不要使用程序這一點。首先,它會更好地成爲觸發器。另一方面,如果'Invoice','Line'等具有'ON DELETE CASCADE'的'FOREIGN KEY'約束條件,會更好。無法比擬的更好。 –

+0

@NiettheDarkAbsol這是編寫存儲過程的教訓。它所做的是無關緊要的,他只是在學習機制。 – Barmar

回答

0

要創建一個整數參數的過程做這樣的事情:

DELIMITER $$ 
CREATE PROCEDURE `<procedure_name>`(IN `in_cust_code` INT) 
    BEGIN 
     DELETE 
     ... 
     WHERE 1 
     AND `<table_name>`.`cust_code` = in_cust_code 
      ... 
END 
DELIMITER ; 
+0

爲什麼你需要'1 AND'? – Barmar

+0

''應該是'' – Barmar

+0

您不需要這樣做,當您想要註釋「AND」行時,它非常方便 –