MySQL使用存储过程

题目:根据图片所给的表做一个简单的能实现增删查改的项目

(要求:增删改要有存储过程,查询要用到视图查询
项目名:ConsPrc

在这里插入图片描述

工具:MyEclipse

数据库:MySQL

存储过程:

Oracle:Oracle存储过程
MySQL:下面会讲

1、创表

c_cons_prc表.sql
CREATE DATABASE `work`;
USE `work`;

DROP TABLE IF EXISTS `c_cons_prc`;

CREATE TABLE `c_cons_prc` (
  `tariff_id` INT(16) NOT NULL AUTO_INCREMENT COMMENT '用户电价标识',
  `sp_id` INT(16) DEFAULT NULL COMMENT '受电点标识',
  `cons_id` INT(16) DEFAULT NULL COMMENT '用户标识',
  `pf_std_code` VARCHAR(20) DEFAULT NULL COMMENT '功率因数标准',
  `trade_code` VARCHAR(20) DEFAULT NULL COMMENT '电价行业类别',
  `prc_code` VARCHAR(20) DEFAULT NULL COMMENT '电价码',
  `ts_flag` VARCHAR(20) DEFAULT NULL COMMENT '是否执行峰谷标志',
  `fix_ratio` FLOAT DEFAULT NULL COMMENT '固定力率',
  PRIMARY KEY (`tariff_id`)
) ENGINE=INNODB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;

INSERT  INTO `c_cons_prc`(`tariff_id`,`sp_id`,`cons_id`,`pf_std_code`,`trade_code`,`prc_code`,`ts_flag`,`fix_ratio`) 
	VALUES (1,1001,123456,'1001','生活用电','1001','1001',1001),
		(2,1002,111111,'1002','生活用电','1002','1002',1002),
		(4,1004,1004,'1004','商业用电','1004','1004',1004),
		(5,1005,1005,'1005','生活用电','1005','1005',1005),
		(6,1006,1006,'1006','商业用电','1006','否',1006),
		(7,1007,1007,'1007','生活用电','1007','是',1007),
		(8,1008,1008,'1008','商业用电','1008','1008',1008),
		(9,1009,1009,'1009','商业用电','1009','1009',1009),
		(10,1010,1010,'1010','生活用电','1010','否',1010);
		

2、项目结构

在这里插入图片描述

3、导入jar包

jar包导入到上方的lib文件夹中

4、实体类pojo

C_Cons_Prc.java

因为只有一张表,所以我将视图的字段写的和原表一模一样,这样方便好记

package com.pojo;
/**
 * 用户电价表
 * @author Administrator
 *
 */
public class C_Cons_Prc {

	private int tariff_id;//用户电价标识
	private int sp_id;//受电点标识
	private int cons_id;//用户标识
	private String pf_std_code;//功率因数标准
	private String trade_code;//电价行业类别
	private String prc_code;//电价码
	private String ts_flag;//是否执行峰谷标志
	private float fix_ratio;//固定力率
	
	public int getTariff_id() {
		return tariff_id;
	}
	public void setTariff_id(int tariff_id) {
		this.tariff_id = tariff_id;
	}
	public int getSp_id() {
		return sp_id;
	}
	public void setSp_id(int sp_id) {
		this.sp_id = sp_id;
	}
	public int getCons_id() {
		return cons_id;
	}
	public void setCons_id(int cons_id) {
		this.cons_id = cons_id;
	}
	public String getPf_std_code() {
		return pf_std_code;
	}
	public void setPf_std_code(String pf_std_code) {
		this.pf_std_code = pf_std_code;
	}
	public String getTrade_code() {
		return trade_code;
	}
	public void setTrade_code(String trade_code) {
		this.trade_code = trade_code;
	}
	public String getPrc_code() {
		return prc_code;
	}
	public void setPrc_code(String prc_code) {
		this.prc_code = prc_code;
	}
	public String getTs_flag() {
		return ts_flag;
	}
	public void setTs_flag(String ts_flag) {
		this.ts_flag = ts_flag;
	}
	public float getFix_ratio() {
		return fix_ratio;
	}
	public void setFix_ratio(float fix_ratio) {
		this.fix_ratio = fix_ratio;
	}
	
}


5、dao层

C_Cons_PrcMapper.java
package com.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.pojo.C_Cons_Prc;

public interface C_Cons_PrcMapper {
	
	public List<C_Cons_Prc> findAll();
	public int findCount();
	public List<C_Cons_Prc> findList(@Param("currPage")int currPage,
									   @Param("pageSize")int pageSize);
	
	public C_Cons_Prc findById(int tariff_id);
	public int addC_Cons_Prc(C_Cons_Prc p);
	public int delC_Cons_Prc(int tariff_id);
	public int updC_Cons_Prc(C_Cons_Prc p);

	public List<C_Cons_Prc> findByCondition(String trade_code);
}

C_Cons_PrcMapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.dao.C_Cons_PrcMapper">

	<select id="findAll" resultType="C_Cons_Prc_View">
		SELECT * FROM `c_cons_prc_view`
	</select>
	
	<select id="findList" resultType="C_Cons_Prc">
		SELECT * FROM `c_cons_prc` limit #{currPage},#{pageSize}
	</select>
	
	<!-- 查询记录条数 -->
	<select id="findCount" resultType="int">
		select count(1) from c_cons_prc
	</select>
	
	
	<select id="findById" resultType="C_Cons_Prc">
  		select * from c_cons_prc where tariff_id = #{tariff_id}
	</select>
	



	<parameterMap id="pm" type="java.util.Map">
        <parameter property="userId" jdbcType="INTEGER" mode="IN"></parameter>
        <parameter property="userCount" jdbcType="INTEGER" mode="OUT"></parameter>
    </parameterMap>
	

	<insert id="addC_Cons_Prc" parameterType="com.pojo.C_Cons_Prc" statementType="CALLABLE">
		{call addC_Cons_Prc(
			#{tariff_id,mode=OUT,jdbcType=INTEGER},#{sp_id,mode=IN},
			#{cons_id,mode=IN},#{pf_std_code,mode=IN},#{trade_code,mode=IN},
			#{prc_code,mode=IN},#{ts_flag,mode=IN},#{fix_ratio,mode=IN}
		)}
	</insert>
	
	<delete id="delC_Cons_Prc" parameterType="com.pojo.C_Cons_Prc" statementType="CALLABLE">
		{call delC_Cons_Prc(
			#{tariff_id,mode=IN}
		)}
	</delete>
	
	<update id="updC_Cons_Prc" parameterType="com.pojo.C_Cons_Prc" statementType="CALLABLE">
		{call updC_Cons_Prc(
			#{tariff_id,mode=IN},#{sp_id,mode=IN},#{cons_id,mode=IN},#{pf_std_code,mode=IN},
			#{trade_code,mode=IN},#{prc_code,mode=IN},#{ts_flag,mode=IN},#{fix_ratio,mode=IN}
		)}
	</update>
	
	
	<select id="findByCondition" resultType="C_Cons_Prc">
  		select * from c_cons_prc where trade_code = #{trade_code}
	</select>
	
	
</mapper>

6、controller

C_Cons_PrcController.java
package com.controller;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.pojo.C_Cons_Prc;
import com.service.C_Cons_PrcService;

@Controller
@RequestMapping("/pc")
public class C_Cons_PrcController {
	@Autowired
	private C_Cons_PrcService objService;
	
	@RequestMapping("/index")
	public String index(Model model){
		return "index";
	}
	
	@RequestMapping("/add")//显示添加页面
	public String addShow(){
		return "add";
	}
	
	@RequestMapping("/addCons.do")//显示添加页面
	@ResponseBody//ajax的方式
	public String addP(C_Cons_Prc p){
		int res = objService.addC_Cons_Prc(p);
		return JSON.toJSONString(res);
	}
	
	@RequestMapping("/findAll")
	public String findAll(C_Cons_Prc p){
		List<C_Cons_Prc> list = objService.findAll();
		return "index";
	}
	
	

	@RequestMapping(value="/findCons.do")
	@ResponseBody
	public Object findPerpay(@RequestParam(value="page",required=false)Integer currPage,
						@RequestParam(value="limit",required=false)Integer pageSize){
			System.out.println("findCons");
			if (currPage==null) {
				currPage=1;
			}
			if (pageSize==null) {
				pageSize=10;
			}
			int limitOne=(currPage-1)*pageSize;
			//记录数
			List<C_Cons_Prc> list = objService.findList(limitOne, pageSize);
			//总记录数
			int count=objService.findCount();
			System.out.println(count);
			
			String strjson=JSON.toJSONString(list);
			String json = "{\"code\":0,\"msg\":\"\",\"count\":" + count + ",\"data\":" + strjson + "}";
			System.out.println(JSONObject.toJSON(list));
			return JSONObject.toJSON(list);
	}
	
	

	
	@RequestMapping("/del")
	@ResponseBody
	public String del(Integer id){
		int res = objService.delC_Cons_Prc(id);
		return JSON.toJSONString(res);
	}
	
	@RequestMapping("/update")
	public String update(){
		return "update";
	}
	
	
	@RequestMapping("/updSel")
	public String updSel(Integer id,Model model){
		System.out.println(id);
		C_Cons_Prc cons = objService.findById(id);
		model.addAttribute("cons",cons);
		return "update";
	}

	@RequestMapping("/updCons")
	@ResponseBody
	public String updCons(C_Cons_Prc cons){
		int res = objService.updC_Cons_Prc(cons);
		System.out.println(JSON.toJSONString(res));
		return JSON.toJSONString(res);
	}

	//条件查询
	@RequestMapping("/findByCondition")
	@ResponseBody
	public String findByCondition(String trade_code,Model model){
		List<C_Cons_Prc> list = objService.findByCondition(trade_code);
		return JSON.toJSONString(list);
	}
	

}

7、jsp页面

查询页面:index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
  <head>
    
    <title>查询</title>
    <link rel="stylesheet" href="${pageContext.request.contextPath}/statics/bots335/css/bootstrap.min.css" type="text/css"/>  
    <link rel="stylesheet" href="${pageContext.request.contextPath}/statics/bots335/css/bootstrap-theme.min.css" type="text/css"></link>
    <script type="text/javascript" src="${pageContext.request.contextPath}/statics/js/jquery-2.1.1.js"></script>
    <script type="text/javascript" src="${pageContext.request.contextPath}/statics/bots335/js/bootstrap.min.js"></script>
	<style type="text/css">
		table tr:nth-child(even){background:#F4F4F4;}
	</style>

	<script type="text/javascript">
		function name(){
			$.ajax({
				type:"post",
				url:"${pageContext.request.contextPath}/pc/findCons.do",
				data:{
				},
				dataType:"json",
				success:function(data){
					alert("应交电费信息");
					var h="";
					$.each(data,function(a,b){
						h=h+"<tr>";
						h=h+"<td>"+b.tariff_id+"</td>";
						h=h+"<td>"+b.sp_id+"</td>";
						h=h+"<td>"+b.cons_id+"</td>";
						h=h+"<td>"+b.pf_std_code+"</td>";
						h=h+"<td>"+b.trade_code+"</td>";
						h=h+"<td>"+b.prc_code+"</td>";
						h=h+"<td>"+b.ts_flag+"</td>";
						h=h+"<td>"+b.fix_ratio+"</td>";
  						h=h+"<td><a href='${pageContext.request.contextPath}/pc/updSel?id="+b.tariff_id+"' class='btn btn-primary'>修改</a>";
						h=h+"<a href='javascript:del("+b.tariff_id+")' class='btn btn-danger'>删除</a></td>";
  						h=h+"</tr>";
					});
					$("#info").html(h);
				},
				error:function(data){
					alert("错误!");
				}
			});
		}
	</script>
	<script type="text/javascript">
		function del(id){
			if (confirm("确定删除吗?")) {
				$.ajax({
					type: "post",
					url: "${pageContext.request.contextPath}/pc/del",
					data:{
						id:id
					},
					dataType:"json",
					success: function(data) {
						if (data>0) {
							alert("删除成功!");
							location.href="${pageContext.request.contextPath}/pc/findAll";
						}else{
							aler("删除失败!");
							location.href="${pageContext.request.contextPath}/pc/findAll";
						}
					},
					error:function(){
						alert("错误!");
					}
				});
			}else{
				return false;
			}
		}
	</script>
	<script type="text/javascript">
		$(function(){
			$("#btnFind").click(function(){//条件查询
  				$.ajax({
  					url:"${pageContext.request.contextPath}/pc/findByCondition",
  					type:"post",
  					data:{
  						trade_code:$("#trade_code").val()
  					},
  					dataType:"json",
  					success:function(data){
  						if(data==0){
							location.href="${pageContext.request.contextPath}/pc/findAll";
  						}else{
							var h="";
							$.each(data,function(a,b){
								h=h+"<tr>";
								h=h+"<td>"+b.tariff_id+"</td>";
								h=h+"<td>"+b.sp_id+"</td>";
								h=h+"<td>"+b.cons_id+"</td>";
								h=h+"<td>"+b.pf_std_code+"</td>";
								h=h+"<td>"+b.trade_code+"</td>";
								h=h+"<td>"+b.prc_code+"</td>";
								h=h+"<td>"+b.ts_flag+"</td>";
								h=h+"<td>"+b.fix_ratio+"</td>";
		  						h=h+"<td><a href='${pageContext.request.contextPath}/pc/updSel?id="+b.tariff_id+"' class='btn btn-primary'>修改</a>";
								h=h+"<a href='javascript:del("+b.tariff_id+")' class='btn btn-danger'>删除</a></td>";
		  						h=h+"</tr>";
							});
							$("#info").html(h);
  						}
					},
					error:function(data){
						alert("查询失败!");
					}
  				});
 				
			});
		});
	</script>
</head>
<body onload="name()">
	<div class="container">
			
			
		<table class="table table-striped table-bordered table-hover">
			<caption><h2>用户电价信息</h2></caption>
		</table>
		
		<div class="row">
			<!-- 条件查询 -->
			<div class="col-sm-2" style="font-size: 15px">电价行业类别:</div>
			<div class="col-sm-3">
		    	<input type="text" class="form-control" id="trade_code" name="trade_code">
		    </div>	
			<div class="col-sm-1">
				<input class="btn btn-success" type="button" id="btnFind" name="btnFind" value="查询"/>
			</div>
			
			<div class="col-sm-2">
				<button class="btn btn-info glyphicon glyphicon-plus" id ="add">
					<a href="${pageContext.request.contextPath}/pc/add">新增电价信息</a>
				</button>
			</div>
		</div>
			
		<div class="row" style="margin-top: 30px;">
			<div class="col-sm-12">
				<table class="table table-bordered table-hover ">
					<thead>
						<tr class="danger">
							<th>用户电价标识</th>
							<th>受电点标识</th>
							<th>用户标识</th>
							<th>功率因数标准</th>
							<th>电价行业类别</th>
							<th>电价码</th>
							<th>是否执行峰谷标志</th>
							<th>固定力率</th>
							<th>操作</th>
						</tr>
					</thead>
					<tbody id="info">
						
					</tbody>
				</table>
			</div>
		</div>
	</div>
</body>
</html>

添加页面:add.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
    <title>添加</title>
	<link rel="stylesheet" href="${pageContext.request.contextPath}/statics/layui/css/layui.css">
	<script type="text/javascript" src="${pageContext.request.contextPath}/statics/js/jquery-2.1.1.js"></script>
	<script type="text/javascript" src="${pageContext.request.contextPath}/statics/layui/layui.js"></script>
	<style type="text/css">
		#from div{
			padding-bottom: 20px;
		}
	</style>
	<script type="text/javascript">
		$(function(){
			$("#btnOK").click(function(){
				var sp_id=$("#sp_id").val();//String
	  			var cons_id=$("#cons_id").val();
	  			var pf_std_code=$("#pf_std_code").val();
	  			var trade_code=$("#trade_code").val();
	  			var prc_code=$("#prc_code").val();
	  			var ts_flag=$("#ts_flag").val();
				var fix_ratio=$("#fix_ratio").val();

	  			if(sp_id==""){
	  				alert("信息不能为空!");
	  			}else if(cons_id==""){
	  				alert("信息不能为空!");
	  			}else if(pf_std_code==""){
	  				alert("信息不能为空!");
	  			}else if(trade_code ==""){
	  				alert("信息不能为空!");
	  			}else if(prc_code ==""){
	  				alert("信息不能为空!");
	  			}else if(ts_flag==""){
	  				alert("信息不能为空!");
	  			}else if(fix_ratio==""){
	  				alert("信息不能为空!");
	  			}else{
					$.ajax({
						type: "post",
						url: "${pageContext.request.contextPath}/pc/addCons.do",
						data:{
							sp_id:$("#sp_id").val(),
							cons_id:$("#cons_id").val(),
							pf_std_code:$("#pf_std_code").val(),
							trade_code:$("#trade_code").val(),
							prc_code:$("#prc_code").val(),
							ts_flag:$("#ts_flag").val(),
							fix_ratio:$("#fix_ratio").val()
						},
						dataType:"JSON",
						success: function(data) {
							if (data==true) {
								alert("添加成功!");
								location.href = "${pageContext.request.contextPath}/pc/findAll";
							}else{
								alert("添加失败!");
							}
						},
						error:function(){
							alert("错误!");
						}
					});
				}
			});
		});
	</script>
</head>	
<body>
	<div class="layui-container">
		<!--表单-->
		<div class="layui-row">
			<fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
			  	<legend>新增电价信息</legend>
			</fieldset>  
		</div>
		
		<div class="layui-row">
			<div class="layui-col-sm4">
				<div class="layui-form-item"><label class="layui-form-label">受电点标识:</label>
				    <div class="layui-input-block">
				      <input id="sp_id" type="text" name="sp_id" required ="required"  lay-verify="required" autocomplete="off" class="layui-input">
				    </div>
			  	</div>
			</div>
			<div class="layui-col-sm4"></div>
			<div class="layui-col-sm4">
				<div class="layui-form-item">
				    <label class="layui-form-label">用户标识:</label>
				    <div class="layui-input-block">
				      <input id="cons_id" type="text" name="cons_id" required ="required"  lay-verify="required" autocomplete="off" class="layui-input">
				    </div>
			  	</div>
			</div>
		</div>
		
		
		<div class="layui-row">
			<div class="layui-col-sm4">
				<div class="layui-form-item">
				    <label class="layui-form-label">功率因数标准:</label>
				    <div class="layui-input-block">
						<input type="text" name="pf_std_code" id="pf_std_code" class="layui-input" required ="required" autocomplete="off"/>
					</div>
			  	</div>
			</div>
			<div class="layui-col-sm4"></div>
			<div class="layui-col-sm4">
				<div class="layui-form-item">
				    <label class="layui-form-label">电价行业类别:</label>
				    <div class="layui-input-block">
				      <input id="trade_code" type="text" name="trade_code" required ="required"  lay-verify="required" autocomplete="off" class="layui-input">
				    </div>
			  	</div>
			</div>
		</div>	
		
		<div class="layui-row">
			<div class="layui-col-sm4">
				<div class="layui-form-item">
					<label class="layui-form-label">电价码:</label>
					<div class="layui-input-block">
						<input type="text" name="prc_code" id="prc_code"  required ="required"  lay-verify="required" autocomplete="off" class="layui-input"/>
					</div>
				</div>
			</div>
			<div class="layui-col-sm4"></div>
			<div class="layui-col-sm4">
				<div class="layui-form-item">
					<label class="layui-form-label">是否执行峰谷标志:</label>
					<div class="layui-input-block">
						<input type="text" name="ts_flag" id="ts_flag"  required ="required"  lay-verify="required" autocomplete="off" class="layui-input"//>
					</div>
				</div>
			</div>
		</div>
		
		<div class="layui-row">
			<div class="layui-col-sm4">
				<div class="layui-form-item">
				    <label class="layui-form-label">固定力率:</label>
				    <div class="layui-input-block">
				      <input id="fix_ratio" type="text" name="fix_ratio" required ="required"  lay-verify="required" autocomplete="off" class="layui-input">
				    </div>
			  	</div>
			</div>
		</div>
		
		
		<div class="layui-row">
			<div class="layui-col-sm4">
				<div class="layui-form-item">
				    <div class="layui-input-block">
						<input id="btnOK" type="submit" class="layui-btn" value="立即提交"/>
				    </div>
			  	</div>
			</div>	
		</div>
	</div>
</body>
</html>

更新页面:update.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<html>
<head>
    <title>更新</title>
	<link rel="stylesheet" href="${pageContext.request.contextPath}/statics/layui/css/layui.css">
	<script type="text/javascript" src="${pageContext.request.contextPath}/statics/js/jquery-2.1.1.js"></script>
	<script type="text/javascript" src="${pageContext.request.contextPath}/statics/layui/layui.js"></script>
	
	<script type="text/javascript">
		$(function(){
			$("#btnOK").click(function(){
				$.ajax({
					type: "post",
					url: "${pageContext.request.contextPath}/pc/updCons",
					data:{
						tariff_id:$("#tariff_id").val(),
						sp_id:$("#sp_id").val(),
						cons_id:$("#cons_id").val(),
						pf_std_code:$("#pf_std_code").val(),
						trade_code:$("#trade_code").val(),
						prc_code:$("#prc_code").val(),
						ts_flag:$("#ts_flag").val(),
						fix_ratio:$("#fix_ratio").val(),
					},
					dataType:"json",
					success: function(data) {
  						alert(data);
						if (data!==null) {
							alert("修改成功!");
							location.href="${pageContext.request.contextPath}/pc/findAll";
						}else{
							alert("修改失败!");
						}
					},
					error:function(){
						alert("错误");
					}
				});
			});
		});
	</script>
	<script type="text/javascript">
		$(function(){
			 var id=$("#id").val(parent.$("#tariff_id").val());
			 alert(id);
		});
	</script>
</head>
<body>
	<br/>
	
 	<div class="layui-container">
 		<div class="layui-row">
			<div class="layui-col-sm4">
				<div class="layui-form-item">
					<label class="layui-form-label">受电点标识:</label>
					<div class="layui-input-block">
						<input type="hidden" name = "tariff_id" id="tariff_id" value="${cons.tariff_id }"/>
						<input type="text" name="sp_id" id="sp_id" value="${cons.sp_id }" class="layui-input" required ="required" autocomplete="off"/>
					</div>
				</div>
			</div>
			<div class="layui-col-sm4"></div>
			<div class="layui-col-sm4">
				<div class="layui-form-item">
					<label class="layui-form-label">用户标识:</label>
					<div class="layui-input-block">
						<input type="text" name="cons_id" id="cons_id" value="${cons.cons_id }" class="layui-input" required ="required" autocomplete="off"/>
					</div>
				</div>
			</div>
		</div>
		
		<div class="layui-row">
			<div class="layui-col-sm4">
				<div class="layui-form-item">
					<label class="layui-form-label">功率因数标准:</label>
					<div class="layui-input-block">
						<input type="text" name="pf_std_code" id="pf_std_code" value="${cons.pf_std_code }" class="layui-input" required ="required" autocomplete="off"/>
					</div>
				</div>
			</div>
			<div class="layui-col-sm4"></div>
			<div class="layui-col-sm4">
				<div class="layui-form-item">
					<label class="layui-form-label">电价行业类别:</label>
					<div class="layui-input-block">
						<input type="text" name="trade_code" id="trade_code" value="${cons.trade_code }" class="layui-input" required ="required" autocomplete="off"/>
					</div>
				</div>
			</div>
		</div>
		
		<div class="layui-row">
			<div class="layui-col-sm4">
				<div class="layui-form-item">
					<label class="layui-form-label">电价码:</label>
					<div class="layui-input-block">
						<input type="text" name="prc_code" id="prc_code" value="${cons.prc_code }" class="layui-input" required ="required" autocomplete="off"/>
					</div>
				</div>
			</div>
			<div class="layui-col-sm4"></div>
			<div class="layui-col-sm4">
				<div class="layui-form-item">
					<label class="layui-form-label">是否执行峰谷标志:</label>
					<div class="layui-input-block">
						<input type="text" name="ts_flag" id="ts_flag" value="${cons.ts_flag }" class="layui-input" required ="required" autocomplete="off"/>
					</div>
				</div>
			</div>
		</div>
		
		<div class="layui-row">
			<div class="layui-col-sm4">
				<div class="layui-form-item">
					<label class="layui-form-label">固定力率:</label>
					<div class="layui-input-block">
						<input type="text" name="fix_ratio" id="fix_ratio" value="${cons.fix_ratio }" class="layui-input" required ="required" autocomplete="off"/>
					</div>
				</div>
			</div>
		</div>
		
		<div class="layui-row">
			<div class="layui-col-sm4">
				<div class="layui-form-item">
					<div class="layui-input-block">
						<input type="submit" id="btnOK" class="layui-btn layui-btn-normal" value="保存"/>
					</div>
				</div>
			</div>
		</div>
	</div>
</body>
</html>

页面中导入的包,在我的资源中可以下载

存储过程

c_cons_prc存储过程.sql

#查看视图结果
SELECT * FROM `c_cons_prc_view`

#创建视图
CREATE VIEW `c_cons_prc_view`
AS
  SELECT `tariff_id` AS 用户电价标识,`sp_id` AS 受电点标识,`cons_id` AS 用户标识,`pf_std_code` AS 功率因数标准,
	`trade_code` AS 电价行业类别,`prc_code` AS 电价码,`ts_flag` AS 是否执行峰谷标志,`fix_ratio` AS 固定力率
    FROM `c_cons_prc`

#存储过程
USE `work`;

#添加
DROP PROCEDURE IF EXISTS addC_Cons_Prc;
###
DELIMITER $
CREATE PROCEDURE addC_Cons_Prc(OUT c_tariff_id INTEGER,
			IN c_sp_id INTEGER,
			IN c_cons_id INTEGER,
			IN c_pf_std_code VARCHAR(20),
			IN c_trade_code VARCHAR(20),
			IN c_prc_code VARCHAR(20),
			IN c_ts_flag VARCHAR(20),
			IN c_fix_ratio INTEGER)
BEGIN
	INSERT INTO c_cons_prc(sp_id,cons_id,pf_std_code,trade_code,prc_code,ts_flag,fix_ratio) 
		VALUES (c_sp_id,c_cons_id,c_pf_std_code,c_trade_code,c_prc_code,c_ts_flag,c_fix_ratio);
	SET c_tariff_id=LAST_INSERT_ID();
END $
DELIMITER; 
###



#删除
DROP PROCEDURE IF EXISTS delC_Cons_Prc;
###
DELIMITER $
CREATE PROCEDURE delC_Cons_Prc(IN c_tariff_id INTEGER)
BEGIN
	DELETE FROM c_cons_prc WHERE tariff_id=c_tariff_id;
END $
DELIMITER; 
###



#更新
DROP PROCEDURE IF EXISTS updC_Cons_Prc;
###
DELIMITER $
CREATE PROCEDURE updC_Cons_Prc(IN c_tariff_id INTEGER,
			IN c_sp_id INTEGER,
			IN c_cons_id INTEGER,
			IN c_pf_std_code VARCHAR(20),
			IN c_trade_code VARCHAR(20),
			IN c_prc_code VARCHAR(20),
			IN c_ts_flag VARCHAR(20),
			IN c_fix_ratio INTEGER)
BEGIN
	UPDATE c_cons_prc SET 
		sp_id=c_sp_id,cons_id=c_cons_id,pf_std_code=c_pf_std_code,
		trade_code=c_trade_code,prc_code=c_prc_code,ts_flag=c_ts_flag,fix_ratio=c_fix_ratio
	WHERE tariff_id=c_tariff_id;
END $
DELIMITER; 
###

题外话

第一次在博客上写一整个练习项目,写的不好勿喷,还有因为老师没有布置分页,所以controller的分页我也没去实现,各位大佬还是自行解决吧,溜了溜了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值