zoukankan      html  css  js  c++  java
  • 存储过程


    存储过程
    CallableStatement(从PreparedStatement扩展来)
    cs=connection.prepareCall("{call psname(?,?,?)}");
    cs.registerOutParameter(index,Types.INTEGER);
    cs.getXXX(i,XXXX);
    cs.executeUpdate();
    int id=cs.getInt(index);

    前端工具下
    数据库上右击-->Create New Procedure/Function-->Name:"...."--

    >Create PROCEDURE-->

    DELIMITER $$   -- 定义分隔符
    DROP PROCEDURE IF EXISTS `jdbc`.`addUser` $$   -- 判断如果存在这个存储过程则删除
    -- 定义参数:IN 输入参数,OUT 输出参数
    CREATE PROCEDURE `jdbc`.`addUser` (IN pname VARCHAR(45),IN birthday DATE,IN money FLOAT,OUT pid INT)
    BEGIN
      INSERT INTO USER(name,birthday,money) VALUES (pname,birthday,money);
      SELECT LAST_INSERT_ID() INTO pid; -- 获得最后一次插入的ID号,放入pid中
    END $$

    DELIMITER ;

    -->Execute;

    public class PsTest {
     public static void main(String[] args) {
      ps();
     }
     static void ps(){
      Connection conn=null;
      CallableStatement cs=null;
      ResultSet rs=null;
      try {
    //   建立连接
    //   conn=JdbcUtils.getConnection();
       conn=JdbcUtilsSing.getInstance().getConnection();//使用单例
       String sql="{call addUser(?,?,?,?)}";
       cs=conn.prepareCall(sql);
       cs.registerOutParameter(4,

    Types.INTEGER);
       cs.setString(1, "ps name");
       cs.setDate(2, new java.sql.Date

    (System.currentTimeMillis()));
       cs.setFloat(3, 100f);
       cs.executeUpdate();
       int i=cs.getInt(4);
       System.out.println("i="+i);
      } catch (Exception e) {
       e.printStackTrace();
      }finally{
    //   释放资源
       JdbcUtils.free(rs, cs, conn);
      }
     }
    }

  • 相关阅读:
    14.挂载硬件设备
    13.Linux文件存储系统
    12.su 命令与sudo 服务
    11.文件访问控制列表
    10. 文件权限与归属
    9. Linux用户身份和能力
    8. Linux重要的环境变量
    7. Linux命令行的通配符、转义字符
    6. Linux输入输出重定向
    5. Linux文件目录管理和打包压缩与搜索命令
  • 原文地址:https://www.cnblogs.com/mingforyou/p/2287719.html
Copyright © 2011-2022 走看看