在MYSQL中使用存储过程要设置什么地方吗
同标题,我想创建一个存储过程,却给出 ERROR 1607(HY000)的提示。
你是怎么创建的?版本是多少?
不需要什么配置的。
我也遇到同样的问题,后来发现是用的5.1.23版本有问题 换成5.0就正常了
不是问题的
-
SQL code
delimiter || create procedure p1() begin select * from table; end|| delimiter ;
你的mySQL是什么版本?
版本>5才能用 '存储过程'
== 思想重于技巧 ==
-
SQL code
delimiter || create procedure p1() begin select * from `table`; end|| delimiter ;
版本是5.1版
应该可以 试一下
以下摘自 MySQL 5.1 Reference Manual
引用CREATE TABLE test1(a1 INT);
CREATE TABLE test2(a2 INT);
CREATE TABLE test3(a3 INT NOT NULL AUTO_INCREMENT PRIMARY KEY);
CREATE TABLE test4(
a4 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
b4 INT DEFAULT 0
);
DELIMITER |
CREATE TRIGGER testref BEFORE INSERT ON test1
FOR EACH ROW BEGIN
INSERT INTO test2 SET a2 = NEW.a1;
DELETE FROM test3 WHERE a3 = NEW.a1;
UPDATE test4 SET b4 = b4 + 1 WHERE a4 = NEW.a1;
END;
|
DELIMITER ;
INSERT INTO test3 (a3) VALUES
(NULL), (NULL), (NULL), (NULL), (NULL),
(NULL), (NULL), (NULL), (NULL), (NULL);
INSERT INTO test4 (a4) VALUES
(0), (0), (0), (0), (0), (0), (0), (0), (0), (0);
create procedure p1() (
select * from `table`;
);