zoukankan      html  css  js  c++  java
  • java调用存储过程(stored procedures)的HelloWorld例子

    1.java调用存储过程(stored procedures)的HelloWorld程序

    有点数据 库基础的人都知道。存储过程(stored procedures)和java没什么关系。它是一段纯粹的数据库sql语言的程序,事先存储在数据库中。没有java程序调用,人家自己独立运行的也 挺好。现在的问题就是,你有一个java程序,你想调用现有的一段存储过程,如何做这件事儿?我们底下的实验就是先向数据库存进去一个名为p4的存储过 程,然后再编一段java程序去调用它。

    以下就是我向我的数据库中,插入一个叫做p4的存储过程的截图。

    下 面解释一下:delimiter是定义边界的意思。delimiter $就是定义$为边界。一个$和下一个$之间就像一个区域一样,在这个区域之间的东西才会被执行。mysql缺省默认来讲见到 ;就执行,但看到delimiter $ 以后,就只会忍饥挨饿盯着直到下一个$出现,才会执行两个$之间的命令。
    最后的delimiter ; 就把分隔符从$换回到默认的 ;(注意 delimiter后边一定有一个空格)

    create procedure p4(OUT cnt int)

    --创建MySQL存储过程p4
    --此存储过程的过程名是p4,该过程包含1个参数,
    --是输出类型的(以OUT标示),参数名是cnt,类型是int

    select count(*) into cnt from test.login;

    --再查询表test.login中count(*),将其输出到输出类型的参数cnt里面

    call p4(@a);

    调用p4存储过程,下面的@a是个mysql中的临时变量,就对应刚才的cnt。

    顺便,如果想删除一个procedure,我们就用drop procedure p4;


    mysql> use test
    mysql> delimiter $
    mysql> create procedure p4(OUT cnt int) 
    -> begin 
    -> select count(*) into cnt from test.login; 
    -> end 
    -> $ 
    Query OK, 0 rows affected (0.00 sec)

    -> delimiter ;

    mysql> call p4(@a);
    Query OK, 0 rows affected (0.00 sec)
    mysql> select @a;
    +------+
    | @a |
    +------+
    | 2 |
    +------+
    1 row in set (0.00 sec)

    文章转载自:https://blog.csdn.net/mark_to_win/article/details/89288027

  • 相关阅读:
    致此时的自己
    感悟
    Do what you love VS Love what you do
    感悟
    JavaScript中关于date对象的一些方法
    悟透JavaScript——学习心得
    JavaScript中关于string对象的一些方法
    JavaScript中的简单语句
    w3school CSS基础教程
    SMACSS——Scalable & Modular Architecture for CSS
  • 原文地址:https://www.cnblogs.com/haima1949/p/12157136.html
Copyright © 2011-2022 走看看