mysql創(chuàng)建存儲(chǔ)過程 mysql為什么沒有存儲(chǔ)過程?
mysql為什么沒有存儲(chǔ)過程?在sqlyog中,調(diào)用了一次call我的存儲(chǔ)過程(入?yún)?然后,在mysql中執(zhí)行showfullprocesslist進(jìn)行查看發(fā)現(xiàn)有兩個(gè)連接在同時(shí)執(zhí)行我的存儲(chǔ)過程中的語句
mysql為什么沒有存儲(chǔ)過程?
在sqlyog中,調(diào)用了一次call我的存儲(chǔ)過程(入?yún)?然后,在mysql中執(zhí)行showfullprocesslist進(jìn)行查看發(fā)現(xiàn)有兩個(gè)連接在同時(shí)執(zhí)行我的存儲(chǔ)過程中的語句(別的是不可能出現(xiàn)那些sql語句的)而且經(jīng)過執(zhí)行后的結(jié)果來看,執(zhí)行后的數(shù)據(jù)為正常數(shù)據(jù)的兩倍。然后將存儲(chǔ)過程中的sql語句進(jìn)行逆運(yùn)算(比如,加變成減),然后再執(zhí)行,發(fā)現(xiàn)數(shù)據(jù)恢復(fù)為正常數(shù)據(jù)了。
mysql怎么寫存儲(chǔ)過程?
創(chuàng)建存儲(chǔ)過程mysql> delimiter $ -- delimiter $是設(shè)置 $為命令終止符號(hào),代替默認(rèn)的分號(hào),因?yàn)榉痔?hào)有其他用處.mysql> create procedure sp_test(IN pi_id int, OUT po_name varchar(10))-> begin-> select * from test.tb_test-> select tb_test.name into po_name from test.tb_test where tb_test.id = pi_id-> end-> $Query OK, 0 rows affected (0.00 sec)mysql> delimiter -- 恢復(fù)分號(hào)作為分隔終止符號(hào)5.調(diào)用存儲(chǔ)過程mysql> set @po_name=""Query OK, 0 rows affected (0.00 sec)mysql> call sp_test(1,@po_name)