0
。这里的功能自定义mysql函数 - 无法传递参数作为标题状态向下
DELIMITER //
CREATE FUNCTION GetCreateValue(table_name CHAR(64), id_field CHAR(64), name_field CHAR(64), name_value CHAR(64))
RETURNS INTEGER
BEGIN
DECLARE ret INTEGER;
SELECT count(*) INTO ret FROM table_name WHERE name_field = name_value;
IF ret < 1 THEN
INSERT INTO table_name SET name_field = name_value;
SELECT id_field INTO ret FROM table_name WHERE name_field = name_value;
ELSE
SELECT id_field INTO ret FROM table_name WHERE name_field = name_value;
END IF;
RETURN ret;
END//
DELIMITER ;
,当我运行像
SELECT GetCreateValue('table1', 'ID', 'name', '123456');
我得到一个错误,该表“表格名”简化版,存在。显然参数没有通过。为什么?
很明显,参数**已被传递**,但它是一个“CHAR”,因为它是表名,所以不能使用。 – vulkanino 2012-03-08 10:07:31