mysql语法

mysql语法,第1张

1 mysql 的存储过程里,没有固定的输出语句,要输出内容,使用 select .. 形式即可;

select var_a

select column_a from tb_a limit 2

2 存储过程里,如果只是输出内容(不进行捕获),用上边1中的select即可;如果调用存储过程后对输出的值进行后续捕获,则需使用 out 指定输出参数;

3 @var_a 表示这是个会话变量,在存储过程里可以直接设置值而不用声明,如

set @var_a = 10

但并不推荐在存储过程里使用会话变量(因为这种变量在同一个mysql连接是都是生效的,执行完存储后仍存在),推荐使用声明式的临时变量,即以下方式:

declare var_a int

set var_a = 10

4 示例

drop PROCEDURE p_a

create PROCEDURE p_a(out aa int)

begin

declare bb int

set bb = 10

select bb

select * from t_student limit 1

select CURRENT_DATE()

set aa = bb

end

#调用

set @temp = 50

call p_a(@temp)

select @temp #@temp 为会话变量,由存储过程返回重设值了。

希望能解决您的问题。

mysql 的sql语句如下:

mysql>delimiter //

->create trigger sitedata_ins2

->before insert on user

->for each row

->Begin

->If not exists(select 1 from user_data where d_id=new.id) then

->insert into user_data(d_id,d_name) values(new.id,new.name)

->END IF

->end//

->delimiter

或者简单一点:

mysql>delimiter //

->create trigger sitedata_ins2

->before insert on user

->for each row

->Begin

->insert into user_data(d_id,d_name) values(new.id,new.name)

->end//

->delimiter

二种方法都可以,建议你用第一种


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7338791.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存