当前位置: 首页 > news >正文

wordpress多本小说站出售营销网建

wordpress多本小说站出售,营销网建,wordpress自带hosts文件,购买空间网站哪个好目录 一、存储过程和函数概述 二、创建存储过程和函数 1、创建存储过程 2、创建存储函数 三、查看/调用储存过程和函数 1、查看储存过程/函数 2、调用储存过程/函数 四、修改/删除存储过程和函数 1、修改存储过程和函数 2、删除存储过程和函数 五、练习 一、存储过…

目录

一、存储过程和函数概述

二、创建存储过程和函数

1、创建存储过程

2、创建存储函数

三、查看/调用储存过程和函数

1、查看储存过程/函数

2、调用储存过程/函数

四、修改/删除存储过程和函数

1、修改存储过程和函数

2、删除存储过程和函数

五、练习 


一、存储过程和函数概述

存储过程就是一条或多条SQL语句的集合,可视为批文件,但是七作用不仅限于批处理。创建存储过程和函数的语句分别是create proceddure 和 create function。使用CALL语句来调用存储过程,只能输出变量返回值。函数可以从语句外调用(即通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。

二、创建存储过程和函数

1、创建存储过程

语法

create procedure 存储过程名称 ([定义存储过程参数列表]) 
begin
body
end 结束符

储存过程参数列表:

[in | out | inout]  参数名 参数类型

in---输入参数

out---输出参数

inout---输入输出参数

例如

mysql> delimiter //
mysql> create procedure avg_age()-> begin-> select avg(age) as ave_age-> from emp3;-> end //
Query OK, 0 rows affected (0.00 sec)mysql> delimiter ;

delimiter //语句的作用是将MySQL的结束符设置为//。MySQL默认的结束符是“;” 。避免冲突。

2、创建存储函数

语法

create function 存储函数名 ([定义存储过程参数列表])
returns 类型
begin
body;
end 结束符

例如

mysql> delimiter //
mysql> create function count_num()-> returns int-> return (select count(*) from emp3);-> //
Query OK, 0 rows affected (0.03 sec)mysql> delimiter ;

三、查看/调用储存过程和函数

1、查看储存过程/函数

基本语法1

 show [procedure | function] status [like '存储过程名|函数名' \G

基本语法2

 show create [procedure | function] 存储过程名|函数名 \G

 基本语法3

select * from information_schema.Routines where ROUTINE_NAME='存储过程名 | 函数名' \G

例如

基本语法1

mysql> show procedure status like 'avg_age' \G
*************************** 1. row ***************************Db: mydb3Name: avg_ageType: PROCEDUREDefiner: root@localhostModified: 2023-08-22 16:22:41Created: 2023-08-22 16:22:41Security_type: DEFINERComment: 
character_set_client: utf8
collation_connection: utf8_general_ciDatabase Collation: latin1_swedish_ci
1 row in set (0.00 sec)

基本语法2

mysql> show create procedure avg_age \G
*************************** 1. row ***************************Procedure: avg_agesql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIONCreate Procedure: CREATE DEFINER=`root`@`localhost` PROCEDURE `avg_age`()
begin
select avg(age) as ave_age
from emp3;
end
character_set_client: utf8
collation_connection: utf8_general_ciDatabase Collation: latin1_swedish_ci
1 row in set (0.00 sec)

基本语法3

mysql> select * from information_schema.Routines where ROUTINE_NAME='avg_age' \G
*************************** 1. row ***************************SPECIFIC_NAME: avg_ageROUTINE_CATALOG: defROUTINE_SCHEMA: mydb3ROUTINE_NAME: avg_ageROUTINE_TYPE: PROCEDUREDATA_TYPE: 
CHARACTER_MAXIMUM_LENGTH: NULLCHARACTER_OCTET_LENGTH: NULLNUMERIC_PRECISION: NULLNUMERIC_SCALE: NULLDATETIME_PRECISION: NULLCHARACTER_SET_NAME: NULLCOLLATION_NAME: NULLDTD_IDENTIFIER: NULLROUTINE_BODY: SQLROUTINE_DEFINITION: begin
select avg(age) as ave_age
from emp3;
endEXTERNAL_NAME: NULLEXTERNAL_LANGUAGE: NULLPARAMETER_STYLE: SQLIS_DETERMINISTIC: NOSQL_DATA_ACCESS: CONTAINS SQLSQL_PATH: NULLSECURITY_TYPE: DEFINERCREATED: 2023-08-22 16:22:41LAST_ALTERED: 2023-08-22 16:22:41SQL_MODE: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIONROUTINE_COMMENT: DEFINER: root@localhostCHARACTER_SET_CLIENT: utf8COLLATION_CONNECTION: utf8_general_ciDATABASE_COLLATION: latin1_swedish_ci
1 row in set (0.01 sec)

 2、调用储存过程/函数

基本语法

call 存储过程名 (参数);
select 函数名([参数]);

例如

mysql> call avg_age;
+---------+
| ave_age |
+---------+
| 43.9000 |
+---------+
1 row in set (0.00 sec)

四、修改/删除存储过程和函数

1、修改存储过程和函数

基本语法

alter procedure | function  存储过程名 | 函数名 [参数]

例如 

2、删除存储过程和函数

基本语法

drop [procedure | function] [if exists] 存储过程名|函数名

五、练习 

创建表sch并插入数据

字段名

数据类型

主键

外键

非空

唯一

自增

id

INT

name

VARCHAR(50)

glass

VARCHAR(50)

sch 表内容

id

name

glass

1

小明

Glass1

2

小军

Glass2

create table sch ( 
id int primary key, 
name varchar(50) not null, 
glass varchar(50) not null 
)charset=utf8;insert into sch values
(1,'小明','Glass1'),
(2,'小军','Glass2')
;mysql> select * from sch;
+----+--------+--------+
| id | name   | glass  |
+----+--------+--------+
|  1 | 小明   | Glass1 |
|  2 | 小军   | Glass2 |
+----+--------+--------+
2 rows in set (0.00 sec)

1、创建一个可以统计表格内记录条数的存储函数 ,函数名为count_sch();

mysql> delimiter $$
mysql> create function count_sch()-> returns int -> begin-> return (select count(id) from sch)-> ;-> end$$
mysql> delimiter ;mysql> select count_sch();
+-------------+
| count_sch() |
+-------------+
|           2 |
+-------------+
1 row in set (0.00 sec)

2、创建一个存储过程record,有1个参数,输入id,功能是输入id输出对应完整信息

mysql> delimiter $$
mysql> create procedure record (in id_1 int) 
begin select * from sch where id=id_1; 
end$$
Query OK, 0 rows affected (0.00 sec)mysql> delimiter ;
mysql> call record(1);
+----+---------+--------+
| id | name    | glass  |
+----+---------+--------+
|  1 | 小明    | glass1 |
+----+---------+--------+
1 row in set (0.00 sec)
http://www.yayakq.cn/news/304282/

相关文章:

  • 电商系统网站建设天津seo外包平台
  • 做网站都是怎么收费设计学网站
  • 查询友情链接seo优化课程
  • 成品免费观看网站请专业做网站的老师
  • 网站建设二公司网络公司是做什么的
  • 做网站那里好wordpress怎么设置SSL图标
  • 青海专业网站建设推广平台建设建立外贸网站
  • 房产发布网站建设亚马逊跨境电商新手入门
  • 婚庆公司网站建设doc四川省工程信息造价网
  • 苏州市吴江太湖新城建设局网站月嫂网站建设
  • 移动办公型网站开发最正规的购物平台
  • 免费网站制作教程做网站阿里巴巴好还是百度好
  • 建站行业有哪些wordpress 评论可见
  • 怎么自己做淘宝客网站吗上海网站制作网
  • 个人网站备案没有座机wordpress评论回复
  • 网站开发是无形资产深圳招聘网官方网站
  • 马鞍山做网站公司排名seo网站分析案例
  • 深圳市官网网站建设平台软件技术专升本
  • 保亭住房和城乡建设局网站网站建设推广方式
  • 怎么创建网站挣钱网站建设与设计的心得体会
  • 网站建设 申请报告营销推广计划怎么写
  • 万网网站域名多少钱一年wordpress完整模板
  • 信息图表网站武威网站建设优化
  • 厦工品牌网站设计余姚建设网站的公司
  • jq 网站模板做qq主题的网站
  • 如何做企业黄页网站老板办公室装修效果图
  • 适合美工的设计网站遵化网站定制
  • 网站设计案例公司网页设计培训机构学什么好
  • 建设银行网银网站激活网站开发建设企业
  • 网络网站租一个网站建设需要多少钱