`

我的第一个MySQL存储过程

阅读更多

之前做项目的时候,项目组中有成员在大数据量搜索的时候使用了存储过程。但是没有仔细了解,今天突然使用到它,所以就稍微学习了一下。

本来是要用PL/SQL developer编写Oracle10g的存储过程去调用一台远程服务器的,突然发觉我本机上没装Oracle,用不了PL/SQL developer(这是哪门子设计啊,百度了一下,发现有办法不装Oracle而使用developer.可是还要下什么文件,网友给的下载链接又失效了),索性用mySQL的工具来写mySQL的存储过程。我使用的工具是SQLyog企业版。

在一个数据库中新建一个user库,有姓名,财产什么的,然后再建一个存储过程,将代码写上去

 

DELIMITER $$

USE `nn`$$

DROP PROCEDURE IF EXISTS `addMoney`$$

CREATE DEFINER=`root`@`localhost` PROCEDURE `addMoney`(IN xid INT(5),IN xmoney INT(6))
BEGIN
UPDATE USER u SET u.money = u.money + xmoney WHERE u.id = xid;
END$$

DELIMITER ;

 

恩,然后执行一下这些sql语句,一个存储过程就建起来了。

解释一下, 基本的格式就是 create procedureName(in paramentName type, in paramentName type,……)

创建一个叫procedureName的存储过程,然后再begin和end之间写处理逻辑。

恩,最后要试看看这个存储过程能用不了啊。

 

CALL addMoney(1, 500);useruseraddMoney

 给id是1的人发500元钱,不错哈……

这里要注意,MySQL的存储过程调用是用CALL,而oracle的貌似使用execute的……

 

                                                                                                     by   NN  2009-10-13

分享到:
评论

相关推荐

    mysql存储过程实例

    存储过程的参数一般由 3 部分组成:第一部分可以是 in、out 或 inout。in 表示向存储过程中传入参数;out 表示向外传出参数;inout 表示定义的参数可传入存储过程,并可以被存储过程修改后传出存储过程,存储过程...

    mysql存储过程实现分页

    ### MySQL存储过程实现分页 #### 背景与需求 在数据库操作中,分页是一种常见的需求,尤其是在处理大量数据时。通过分页技术,可以有效地减少每次...总之,利用MySQL存储过程实现分页是一个非常实用且高效的方法。

    MySql 分页存储过程以及代码调用

    然而,随着数据量的增长,直接使用OFFSET进行分页可能会变得效率低下,因为MySQL需要遍历从第一条记录到OFFSET指定的位置,这在大数据量下极其耗时。为了解决这个问题,我们可以利用MySQL的ROW_NUMBER()函数或者自增...

    第11章MySQL存储过程与函数.docx

    4. 存储过程一般是作为一个独立的部分来执行,而函数可以作为查询语句的一个部分来调用。 创建存储过程的示例: CREATE PROCEDURE getnamebysno(in xh char(10), out name char(20)) BEGIN SELECT sname INTO ...

    mysql存储过程简单应用编写

    MySQL存储过程是数据库管理系统中的一种重要功能,它允许开发者封装一系列SQL语句并作为一个单元来执行,提高了数据库操作的效率和代码的复用性。在本篇总结文档中,我们将探讨MySQL存储过程的简单应用,包括循环...

    mysql存储过程资料

    根据提供的文件信息,我们可以深入探讨 MySQL 存储过程的相关知识点,包括存储过程的创建、调用、删除,以及其中常用的一些流程控制语句和函数。 ### 一、MySQL 存储过程简介 #### 1. 创建存储过程 存储过程是一种...

    mysql存储过程通用分页

    MySQL存储过程是数据库管理系统中的一种重要功能,它允许开发者编写一系列复杂的SQL语句,封装成一个可重用的模块,以便在需要时调用。在处理大量数据时,特别是进行分页查询,存储过程可以提高效率,减少网络传输,...

    PHP和MySQL存储过程实例

    根据给定的信息,我们可以深入探讨PHP与MySQL存储过程的相关知识点,包括如何在MySQL中使用`CONCAT`函数、创建存储过程以及如何通过PHP脚本来调用这些存储过程。 ### 使用 CONCAT 函数 #### 标题中的示例 ```sql ...

    MYSQL分页存储过程

    通过上述示例,我们可以看到,使用MySQL存储过程实现分页查询不仅能够提高查询效率,还能简化应用程序逻辑,增强系统的可维护性和可扩展性。然而,设计存储过程时也需要注意安全性,避免SQL注入等风险,确保数据库...

    mysql调用存储过程

    MySQL存储过程是数据库管理系统中一组为了完成特定功能的SQL语句集,它可以被命名、保存并在需要时调用,极大地提高了数据库开发效率和程序的可维护性。在Java应用程序中,我们经常使用JDBC(Java Database ...

    MySQL存储过程综述及如何使用Navicat创建存储过程

    一、什么是MySQL存储过程?   在大型项目中,有时候需要重复执行能够完成特定功能的SQL语句集,而MySQL为我们提供了存储过程的概念,存储过程是数据库中的一个重要对象,它是存储在数据库中的一组完成特定功能的...

    MySQL实验报告5(存储过程与函数)(1)(1).pdf

    - count_sch5: 该存储过程接收一个输出参数size,返回表sch中的总行数。使用了“select count(*) into size from sch”语句,将表sch中的行数赋值给size变量。 - count_sch2: 接收两个输出参数s_a和s_id,分别返回表...

    【数据库作业14】第五章: 数据库完整性 习题 + 存储过程

    首先,针对(1)统计离散数学成绩分布的问题,创建了一个名为SCC的表来存储各分数段的人数。通过插入语句初始化了表结构,然后利用存储过程计算不同分数段(>90, >80, >70, >60, )的学生人数。在这个过程中,使用了...

    MYSQL存储过程详解

    1. **性能提升:** 存储过程在第一次执行时会被编译,后续调用时只需要执行已编译的代码,从而提高了执行效率。 2. **代码重用:** 存储过程可以被多次调用,减少了重复代码的编写。 3. **安全性和封装性:** 可以通过...

    dapper的调用各种存储过程的方法

    `ExecuteScalar()` 方法返回的是存储过程的第一行第一列的值,非常适合获取存储过程的返回值。 三、返回结果集合的存储过程 对于返回结果集的存储过程,我们可以使用 Dapper 的查询功能将其转换为强类型列表。以下...

    MySQL 5.0 存储过程

    1. **性能提升**:存储过程在第一次执行时会被编译成计划,并存储在数据库缓存中,后续执行时可以直接调用,无需重新编译,从而提高了执行效率。 2. **复用性**:通过存储过程,可以封装重复使用的代码逻辑,避免...

    第11章MySQL存储过程与函数.pdf

    MySQL存储过程和函数是数据库管理中的重要组成部分,它们允许用户在数据库中定义并执行复杂的操作。本章将详细探讨这两个概念及其应用。 1. 存储过程与存储函数的区别: - 存储过程功能更全面,可以处理复杂的业务...

    第六章__MySQL存储过程.ppt

    1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。 2.当对数据库进行复杂操作时(如对多个表进行Update、Insert、...

    Java调用MySQL存储过程并获得返回值的方法

    在这个示例中,`while (rs1.next())`循环遍历第一个结果集,并打印出每个结果。 6. **处理额外的结果集**: 如果存储过程返回多个结果集,可以通过`getMoreResults()`检查是否有更多结果集。如果有,再次调用`...

    MySQL数据库:存储过程嵌套.pptx

    创建另外一个存储过程sell_update,在其中调用第一个存储过程,如果给定参数为0,则修改由第一个存储过程插入记录的是否发货字段为'已发货',如果给定参数为1则删除第一个存储过程插入的记录,并将操作结果输出。...

Global site tag (gtag.js) - Google Analytics