2013-10-31 57 views
-2

我有兩個表,一個是restaurantDetails,另一個是它的位置。 當任何人想要添加一家新餐館時,他/她必須插入細節和位置。但問題是如何使用單個存儲過程插入到這兩個表中?如何使用單個查詢插入到多個表中?

+4

嗯。存儲過程中有兩個插入語句?我假設有一些複雜的因素,爲什麼你不能這樣做? – JohnFx

回答

1

你必須使用觸發器,這裏有一個例子,你如何能夠在第一表中插入它之前插入一行到第二個表:

DELIMITER $$ 
CREATE TRIGGER second_table 
BEFORE INSERT ON first_table 
FOR EACH ROW 
BEGIN 
    IF (EXISTS(SELECT * FROM first_table WHERE sp = NEW.sp)) THEN 
    INSERT INTO second_table (col1,col2,col3) 
    VALUES (NEW.col1, NEW.col2, NEW.col3); 
    END IF; 
END$$ 
DELIMITER ; 
+0

感謝您的答案。這工作 – Habib

+0

不客氣:) – Ali

0

使用「;」分開他們每個人! 您的存儲過程應該是這樣的:

create procedure 
(
@nameofNew varchar(100) 
) 
--Insert code for restaurantDetails 
; 
--Insert code for location 
+0

Okk。我會嘗試這 – Habib

相關問題