存储过程

Posted dawn-tangzedong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了存储过程相关的知识,希望对你有一定的参考价值。

存储过程就是为了完成某个数据库中的特定功能而编写的语句集

1.其中存储过程名不能超过128个字。每个存储过程中最多设定1024个参数
2.传回值的区别:output和return都可在批次程式中用变量接收,而recordset则传回到执行批次的客户端中。
3.查看存储过程:存储过程的查看可以通过如下语句实现:SHOW PROCEDURE STATUS  WHERE db=‘数据库名‘;或SHOW CREATE PROCEDURE 数据库名.存储过程名;
4.删除存储过程:存储过程的删除可以通过如下语句实现:DROP PROCEDURE 存储过程名
5.存储过程优点:
        1、存储过程增强了SQL语言灵活性。存储过程可以使用控制语句编写,可以完成复杂的判断和较复杂的运算,有很强的灵活性;
        2、减少网络流量,降低了网络负载。存储过程在数据库服务器端创建成功后,只需要调用该存储过程即可,而传统的做法是每次都将大量的SQL语句通过网络发送至数据库服务器端然后再执行;
        3、存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。
        4、系统管理员通过设定某一存储过程的权限实现对相应的数据的访问权限的限制,避免了非授权用户对数据的访问,保证了数据的安全。

#这是一个添加的存储过程
CREATE DEFINER=`root`@`localhost` PROCEDURE `insert_data`(IN u_real_name VARCHAR(8), IN u_age INT(3), OUT u_id INT(11))
BEGIN     
INSERT INTO USER (real_name, age)VALUES(u_real_name, u_age);    
SET u_id=LAST_INSERT_ID(); #或SET u_id=@@IDENTITY;  
END$$
DELIMITER ;
#创建后的简单调用
CALL insert_data(小明,21, @u_id);  #CALL 调用存储过程 完成添加效果

 

以上是关于存储过程的主要内容,如果未能解决你的问题,请参考以下文章

Java调用SQL Server的存储过程详解(转)

如何将 r ggplot 图存储为 html 代码片段

sql 这些代码片段将演示如何逐步使用PolyBase。你应该有一个blob存储和存储秘密方便

从Oracle存储过程Oracle 11g发送邮件

mybatis 存储过程

Sublime Text自定制代码片段(Code Snippets)