2014-10-06 144 views
0

如何將數據發送到要在MySql的多個表中作爲多行插入的存儲過程。我知道選項加載數據文件並加載xml。但我想通過數據作爲參數給SP(不想使用文件,因爲我想避免從遠程機器到服務器的文件傳輸)。使用mysql中的SP將多行插入到多個表中

例如,如果我想插入2行到2個表如何發送所有4行的數據。

也許我可以發送2個文本參數每一個包含每個表的插入查詢。這是最好的方法嗎?

回答

0

你可以發送數據作爲參數, 假設你可以有文本數據類型參數,你可以發送昏迷分開的數據。 在SP中,您可以從參數中提取數據並將其用於插入表格

0
DELIMITER // 
DROP PROCEDURE IF EXISTS myInsert; // 
CREATE PROCEDURE myInsert(IN name1 CHAR(40), IN val1 INTEGER(11), IN name2(CHAR(40), IN val2 INTEGER(11)) 
BEGIN 
INSERT INTO test1 (name, val) VALUES (name1, val1), (name2, val2); 
INSERT INTO test2 (val) VALUES (val1), (val2); 
END; //