deterministic mysql_mysql中的过程和函数

本文详细介绍了MySQL中创建、调用、查看、修改和删除存储过程与函数的步骤,强调了`DETERMINISTIC`选项对于优化器的影响。通过示例展示了如何创建和使用这些过程和函数,并提到它们的复用性、高效性和安全性优势。
摘要由CSDN通过智能技术生成

1 创建存储过程和函数

创建存储过程和函数的create语法规范如下:

CREATE

[DEFINER = { user | CURRENT_USER }] ##很多时候不需要特别声明

PROCEDURE sp_name ([proc_parameter[,...]])

[characteristic ...] routine_body

CREATE

[DEFINER = { user | CURRENT_USER }]

FUNCTION sp_name ([func_parameter[,...]]) ##输入参数

RETURNS type ## 声明返回值

[characteristic ...] routine_body

proc_parameter:

[ IN | OUT | INOUT ] param_name type ##声明输入输出参数

func_parameter:

param_name type ##输入参数,由于其输出参与已经在return中声明,不需要再指定

type:

Any valid MySQL data type

characteristic:

COMMENT 'string'

| LANGUAGE SQL

| [NOT] DETERMINISTIC ##默认为NOT DTERMINISTIC

| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }

| SQL SECURITY { DEFINER | INVOKER }

routine_body:

Valid SQL routine statement

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值