MySQL delimiter 定义命令的结束标志


  本文标签:MySQL delimiter

  以下的文章主要介绍的是MySQL delimiter 定义命令的结束标志  。我们大家都知道在默认情况下,MySQL delimiter是分号;  。在命令行的客户端中,如果有一行命令以分号结束,那么回车后,MySQL将会执行该命令  。

  如输入下面的语句

  1. MySQL> select * from test_table; 

  然后回车,那么MySQL将立即执行该语句  。

  但有时候,不希望MySQL这么做  。在为可能输入较多的语句,且语句中包含有分号  。

  如在命令行下输入存储过程:

  1. MySQL> create procedure simpleproc (out paraml int)  
  2. -> begin  
  3. -> select count(*) into paraml from user;  
  4. -> end  

  

  

  这时使用MySQL delimiter来改变默认结束标志:

  

  1. MySQL> delimiter //  
  2. MySQL> create procedure simpleproc (out paraml int)  
  3. -> begin  
  4. -> select count(*) into paraml from user;  
  5. -> end  
  6. -> // 

  然后就可以改回原来的分号,然后测试一下存储过程

  

  1. MySQL> delimiter ;  
  2. MySQL> call simpleproc(@a);  
  3. Query OK, 0 rows affected (0.00 sec)  
  4. MySQL> select @a;  
  5. +------+  
  6. | @a |  
  7. +------+  
  8. | 5 |   
  9. +------+  
  10. 1 row in set (0.00 sec)  

  以上的相关内容就是对MySQL delimiter 定义命令的结束标志的介绍,望你能有所收获  。