Tôi đang làm việc với Mysql 5.1.28-rc trên freebsd. Tôi vừa mới quyết định sử dụng thủ tục lưu trữ trong MYSQL và tạo ra một thủ tục kiểm tra như sau:MYSQL Lưu trữ các thủ tục Nếu câu hỏi Vấn đề
DELIMITER $$
DROP PROCEDURE IF EXISTS test $$
CREATE PROCEDURE test(IN test VARCHAR(22))
BEGIN
DECLARE count INT(11);
SET count = (SELECT COUNT(*) FROM Test WHERE test_column = test);
SELECT count;
IF count = 0 THEN
SET count = 1;
ELSE
SET count = 2;
ENDIF;
END $$
DELIMITER;
Thủ tục này hoạt động tốt mà không cần NẾU tuyên bố trong nó, nhưng với câu lệnh if nó mang lại, 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 '; END'
Tôi làm cách nào để giải quyết vấn đề này? Vấn đề ở đâu?
bò thánh, làm sao tôi có thể bỏ lỡ mà :) – systemsfault
Đó là đêm về không thể để phát hiện lỗi chính tả trong mã của riêng bạn, đừng lo lắng. Hãy nghe nó để lập trình đôi hoặc nếu bạn không thể làm điều đó, SO ...: D –