我創建這樣MySQL存儲功能問題
CREATE FUNCTION getVendorID(IN venname VARCHAR(255))
RETURNS INT
BEGIN
DECLARE a INT;
SELECT vendorid FROM vendors WHERE vendorname LIKE venname INTO a;
RETURN a;
END$$
存儲功能,但是我收到一個錯誤:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IN venname VARCHAR(255))
RETURNS INT
BEGIN
DECLARE a INT;
SELECT vendorid FRO' at line 1
SQL讀**不**影響二進制日誌,SQL寫做!,仍然+ 1雖然。 – Johan 2011-06-15 23:06:54
READS需要SQL DATA來告訴mysql函數不會寫任何東西 – piotrm 2011-06-15 23:09:44
官方文檔說:*「CONTAINS SQL表示該例程不包含讀取或寫入數據的語句,如果沒有給出這些特徵,則這是默認值這樣的語句的例子是SET @x = 1或者DO RELEASE_LOCK('abc'),它們既執行又不讀或寫數據。「*注意**這是默認的**部分。 – Johan 2011-06-15 23:13:07