mysql中怎么定义参数,mysql参数设置

mysql怎么定义变量?

下面是一个简单的 存储过程的例子.

为托克托等地区用户提供了全套网页设计制作服务,及托克托网站建设行业解决方案。主营业务为做网站、网站设计、托克托网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

DECLARE v_index INT;

定义一个 名称为 v_index 的变量, 类型为 INT

MYSQL 变量定义应该只能在 存储过程, 函数里面定义.

不像 Oracle / SQL Server , 一个 BEGIN / END 里面就可以定义/执行了。

mysql DELIMITER //

mysql CREATE PROCEDURE TestWhile()

- BEGIN

- DECLARE v_index INT;

-

- SET v_index = 0;

-

- WHILE v_index 5 DO

- SET v_index = v_index + 1;

- SELECT v_index;

- END WHILE;

-

- END//

Query OK, 0 rows affected (0.00 sec)

mysql参数设置

采用set GLOBAL命令。如:set GLOBAL event_scheduler=1;

在Mysql的配置文件中对参数值进行修改,之后重启数据库服务即可。

mysql 字段名做参数

1、存储子程序不能包含SQL预处理语句(PREPARE、EXECUTE、DEALLOCATE PREPARE)。隐含意义:不能在存储子程序中使用动态SQL语句(其中,能够以字符串形式构造动态语句,然后执行它们)。从MySQL 5.0.13开始,对于存储程序放宽了该限制,但该限制仍适用于存储函数和触发程序。

2、mssql下的存储过程写法:

create proc proc_ @col varchar(30)

as

begin

declare @sql varchar(100)

set @sql='select ' + @col +' from table_name'

exec(@sql)

end

exec proc_ 'col_name'

MySQL存储过程里怎么定义一个参数类型和表的变量类型一样?

MySQL存储过程中,定义变量有两种方式:

  1、使用set或select直接赋值,变量名以@开头,可以在一个会话(即连接)的任何地方声明,作用域是整个会话,称为用户变量。例如:set @var=1;

  2、 以declare关键字声明的变量,只能在存储过程中使用,称为存储过程变量,主要用在存储过程中,或者是给存储传参数中。例如: declare var1 int default 0;

两者的区别是:

    在调用存储过程时,以declare声明的变量都会被初始化为null。而会话变量(即@开头的变量)则不会被再初始化,在一个会话(连接)内,只须初始化一次,之后在会话内都是对上一次计算的结果,就相当于在是这个会话内的全局变量。


当前名称:mysql中怎么定义参数,mysql参数设置
文章转载:http://ybzwz.com/article/hoddod.html