为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
与MySQL的零距离接触_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • 特性?
    查看全部
  • 参数 IN OUT INOUT
    查看全部
  • 创建存储过程
    查看全部
  • 创建一个无参存储过程 举例:CREATE PROCEDURE sp1() SELECT VERSION(); 调用过程:CALL sp1(); 注:无参过程的调用可以不写小括号,例如上面的例子可以写成 CALL sp1
    查看全部
  • 一. 存储过程简介 存储过程 存储过程存储在数据库内,可以有应用程序调用执行,而且允许用户声明变量以及进行流程控制,存储过程可以接受参数,可以介绍输入类型的参数,也可以接受输出类型的参数,并且可以存在多个返回值。所以存储过程的效率要比我们单一的sql语句执行的效率要高,比如:假设我们写了两条sql的语句,mysql会对这两天语句逐一的进行分析、逐一的进行编译,在进行逐一的执行,而我们采用的存储过程以后,只有在第一次才进行语法分析和编译,以后我们客户端再去调用,会直接来调用执行的结果,其中就省略了再次的语法分析和编译过程。 存储过程的优点。 (一)、增加sql语句的功能和灵活性 因为在存储过程内可以写控制语句,name就有很强的灵活性,可以完成复杂的判断以及较复杂的运算 (二)、实现较快的执行速度。 如果执行某一个复杂的操作,包含大量的sql语句,那么这些语句都将被mysql的引擎执行语法分析、编译、以及执行的过程,所以执行效率相对较低。而存储过程是预编译的,当客户端第一次调用这个存储过程的时候,mysql的引擎将对它进行语法分析、编译等操作,然后把这个编译的结果存储到内存当中,所以,第一次的的执行效率适合以前一样。但是以后客户端再次调用这个存储过程的时候便直接从内存当中来执行,所以说效率比较高,速度比较快。 (三)、减少了网络流量 如果我们通过客户端每个单独发送sql语句让服务器来执行,那么通过http协议所提交的数据量相对而言比较大。假设我们准备删除user表中id为3的记录 delete from user where id=3;这句话的字符量大约超过了30个字符,如果我们把他存储成存储过程的话,假设有一个存储过程叫delete user,我们只需要调用delete user吧id传过去就可以完成了删除,所以我们会发现,我们只需要来传递存储过程的名字以及要删除的那个id的号码就可以了。所以他提交给服务器的数量就会少很多。减少了网络流量
    查看全部
  • 自定义函数 必要条件(参数,返回值) begin end 适用于 复合结构函数 create function function_name(c1 int unsigned,c2 int unsigned) returns int unsigned begin ... end
    查看全部
    0 采集 收起 来源:课程回顾

    2017-08-08

  • 自定义含有复合结构函数体的函数时: 需要 修改分隔符:DELEMITER 分隔符 >DELIMITER // 当函数体内需要执行的是多条语句时,要使用BEGIN...END语句 且当编写函数体内容的时候,需要使用 DELIMITER 关键字将分隔符先修改为别的,否则编写语句的时候写到 ';' 的时候会直接执行,导致函数编写失败 删除函数:DROP FUNCTION [IF EXISTS] function_name >DELIMITER // >CREATE FUNCTION ADD_USER(p_id SMALLINT,username VARCHAR(20)) >RETURNS INT UNSIGNED >BEGIN >INSERT user(p_id,username) VALUES(p_id,username);(这里有分号) >RETURN LAST_INSERT_ID();(也有分号) >END (回复正常分隔符)删除分隔符:DELEMITER ;
    查看全部
  • 一. 存储过程简介 存储过程 存储过程存储在数据库内,可以有应用程序调用执行,而且允许用户声明变量以及进行流程控制,存储过程可以接受参数,可以介绍输入类型的参数,也可以接受输出类型的参数,并且可以存在多个返回值。所以存储过程的效率要比我们单一的sql语句执行的效率要高,比如:假设我们写了两条sql的语句,mysql会对这两天语句逐一的进行分析、逐一的进行编译,在进行逐一的执行,而我们采用的存储过程以后,只有在第一次才进行语法分析和编译,以后我们客户端再去调用,会直接来调用执行的结果,其中就省略了再次的语法分析和编译过程。 存储过程的优点。 (一)、增加sql语句的功能和灵活性 因为在存储过程内可以写控制语句,name就有很强的灵活性,可以完成复杂的判断以及较复杂的运算 (二)、实现较快的执行速度。 如果执行某一个复杂的操作,包含大量的sql语句,那么这些语句都将被mysql的引擎执行语法分析、编译、以及执行的过程,所以执行效率相对较低。而存储过程是预编译的,当客户端第一次调用这个存储过程的时候,mysql的引擎将对它进行语法分析、编译等操作,然后把这个编译的结果存储到内存当中,所以,第一次的的执行效率适合以前一样。但是以后客户端再次调用这个存储过程的时候便直接从内存当中来执行,所以说效率比较高,速度比较快。 (三)、减少了网络流量 如果我们通过客户端每个单独发送sql语句让服务器来执行,那么通过http协议所提交的数据量相对而言比较大。假设我们准备删除user表中id为3的记录 delete from user where id=3;这句话的字符量大约超过了30个字符,如果我们把他存储成存储过程的话,假设有一个存储过程叫delete user,我们只需要调用delete user吧id传过去就可以完成了删除,所以我们会发现,我们只需要来传递存储过程的名字以及要删除的那个id的号码就可以了。所以他提交给服务器的数量就会少很多。减少了网络流量
    查看全部
  • 创建带参数的自定义函数: CREATE FUNCTION f2(num1 SMALLINT UNSIGNED,num2 SMALLINT UNSIGNED) RETURNS FLOAT(10,2) UNSIGNED RETURN(num1+num2) 删除函数: DROP FUNCTION fun_name;
    查看全部
  • 自定义函数的时候,如果有涉及汉字的,要先set names gbk,否则调用的时候会出现乱码. SET NAMES gbk; USE test; SELECT NOW(); SELECT DATA_FORMAT(NOW(),'%y年%m月%d日 %h点:%i分:%s秒'); 以上可以写成一个函数f1()方便后面调用: CREATE FUNCTION f1() RETURNS VARCHAR(30) RETURN DATE_FORMAT(NOW(),'%y年%m月%d日 %h点:%i分:%s秒'); SELECT f1();(调用)
    查看全部
  • 外键约束的参照操作
    查看全部
  • 定义函数体的规范
    查看全部
  • 总结——————
    查看全部
    0 采集 收起 来源:总结

    2017-08-08

  • 1.自定义函数 用户自定义函数(user-defined function, UDF)是一种对MySQL扩展的途径, 其用法与内置函数相同。 自定义函数的两个必要条件: a.参数 b.返回值 函数可以返回任意类型的值,同样可以接受这些类型的参数; 函数的参数与返回值之间,没有必然的联系。 2.创建自定义函数 CREATE FUNCTION function_name RETURNS {STRING|INTEGER|REAL|DECIMAL} routine_body - 函数体 3.关于函数体 (1)函数体由合法的SQL语法构成; (2)函数体可以是简单的SELECT或INSERT语句; (3)函数体如果为复合结构则使用BEGIN...END语句; (4)复合结构可以包括声明,循环,控制结构。
    查看全部
  • mysql数据库中的运算符及函数种类
    查看全部
    0 采集 收起 来源:回顾和概述

    2017-08-08

举报

0/150
提交
取消
课程须知
要想学习本课程,你只需要知道数据库是个什么东东就足够了,是不是很easy?!
老师告诉你能学到什么?
1、MySQL安装与配置 2、数据类型 3、流程控制与运算符 4、DDL、DCL、DQL、DML 5、常用函数 6、表类型(存储引擎) 7、图形化工具
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!