zsszss0000 发表于 2015-03-06 13:19

创建游标失败【已解决感谢asdf2110】

本帖最后由 zsszss0000 于 2015-03-06 15:53 编辑

各位MYSQL大神。create procedure propcessorders()
begin
declare ordernumbers cursor
for
select order_num from orders;
end;请各位帮忙看看,这一段创建游标的代码到底有什么问题?

asdf2110 发表于 2015-03-06 13:44

创建不成功? 我试了可以创建mysql> create table orders (order_num int);
Query OK, 0 rows affected (0.44 sec)

mysql> delimiter /
mysql> create procedure propcessorders()
    -> begin
    -> declare ordernumbers cursor
    -> for
    -> select order_num from orders;
    -> end;
    -> /
Query OK, 0 rows affected (0.00 sec)

mysql> select version();
    -> /
+------------+
| version()|
+------------+
| 5.6.22-log |
+------------+
1 row in set (0.09 sec)

mysql>
回复 1# zsszss0000


   

zsszss0000 发表于 2015-03-06 13:57

本帖最后由 zsszss0000 于 2015-03-06 14:06 编辑

是不是版本的问题?

asdf2110 发表于 2015-03-06 14:09

把你的报错信息贴出来看看

回复 3# zsszss0000


   

zsszss0000 发表于 2015-03-06 14:22

asdf2110 发表于 2015-03-06 15:46

你这是没设置分割符 导致的吧,delimiter 设置下分割符,看我前面的例子

回复 5# zsszss0000


   

zsszss0000 发表于 2015-03-06 15:52

果真如你所言,我是按照MYSQL必知必会上操作,书中并没有设置delimiter.回复 6# asdf2110


   

zsszss0000 发表于 2015-03-06 16:08

我的理解是不是,由于创建的过程中有;号,所以需要设置一下delimiter,之后可以根据需要切换回来回复 6# asdf2110


   

asdf2110 发表于 2015-03-06 16:10

是的,默认为分号,遇到分号就发给服务器执行

回复 8# zsszss0000


   

zsszss0000 发表于 2015-03-06 16:25

我的MYSQL必知必会就快看完了,之后的话应该怎么样学习MYSQL,有什么建议吗?
对了,我只是兴趣,我工作用不到MYSQL,觉得说不定以后能够用上。回复 9# asdf2110


   
页: [1]
查看完整版本: 创建游标失败【已解决感谢asdf2110】