博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL 存储过程 超市小票打印
阅读量:5425 次
发布时间:2019-06-15

本文共 2489 字,大约阅读时间需要 8 分钟。

create database chaoshils--创建一个数据库gouse chaoshils--使用这个数据库gocreate table gongying--创建一个供应商的表格(  gcode int primary key identity(1001,1),--供应商编号,主键  gname varchar(20),--名称  gsdh varchar(20),--电话  gsdz varchar(20)--地址 )--向供应商表格中添加数据insert into gongying values('可口可乐公司','232323','山东青岛')insert into gongying values('花生油公司','323232','山东济南')insert into gongying values('绿茶公司','565656','山东日照')insert into gongying values('矿泉水公司','656565','山东潍坊')insert into gongying values('红星二锅头公司','878787','北京')create table chaoshi--创建一个超市的表格(  ccode int primary key,--产品编号  cname varchar(20),--产品名称  cshu int,--产品数量  cjin decimal(18,2),--进价  cshou decimal(18,2),--售价  cgcode int --供应商编号,供应商表的外键)--向超市表格中添加数据insert into chaoshi values(10001,'可口可乐',100,2,3,1001)insert into chaoshi values(10002,'花生油',50,40,80,1002)insert into chaoshi values(10003,'绿茶',100,8,20,1003)insert into chaoshi values(10004,'矿泉水',150,1,2,1004)insert into chaoshi values(10005,'红星二锅头',120,3,5,1005)--创建一个小票的表格,不能直接插入数据,在下面存储过程中根据商品的销售情况向里面添加数据create table xiaopiao(  xcode int,--产品编号,超市表的外键  xname varchar(20),--产品名称  xshu int,--购买的产品数量  xjiage decimal(18,2),--产品单价  zjia decimal(18,2)  --产品总价)select*from gongyingselect*from chaoshicreate proc liushui --创建一个存储过程用来记录卖出货物的数量价格添加于小票表中@mai int,--返回一个参数,购买的数量 @hcode int--购买的商品的编号asbegindeclare--声明一下使用下面定义的变量@name varchar(20),@shu int,@danjia decimal(18,2),@zong decimal(18,2),@count intselect @name=cname from chaoshi where ccode=@hcode--通过返回参数的商品编号在超市中查找商品名称赋值于变量@name中select @shu=cshu from chaoshi where ccode=@hcode--通过编号查找此商品现有的而数量赋值于变量@shu中select @danjia=cshou from chaoshi where ccode=@hcode--通过编号查找此产品的价格赋值于变量@danjia中set @zong=@danjia*@mai--货物价格@danjia乘以返回参数中购买的数量@mai等于总价格,用变量@zong接收一下select @count=count(*)from chaoshi where ccode=@hcode--查看一下返回的参数商品编号是否存在,存在值为1,不存在为0,接收于变量@count中if @count>0--如果@count不为0,则存在这种商品begin  if @shu> = @mai--如果超市内商品的数量大于或者等于购买的数量  begin   insert into xiaopiao values(@hcode,@name,@mai,@danjia,@zong)--则向xiaopiao表中添加购买信息   select xcode as 编号,xname as 产品名称,xshu as 购买数量,xjiage as 单价,zjia as 合计 from xiaopiao--把添加到表格中的信息查询一下,列名改为汉字显示  end  else if @shu<@mai--如果超市内的商品数量小于购买的数量  begin  print'货物不足'  --则,货物不足  end  endelse if @count=0--如果@count值为0,则没有这件商品beginprint'没有此商品'endendgo--选中执行此存储过程,只能执行一次exec liushui 50,10008--此处是执行存储过程liushui并返回两个参数,数量和商品编号,可修改数量以及商品参数选择其他商品                     --此处商品编号的参数在表中并有此编号的商品,则执行@count=0这一步,没有此商品,因此小票表中就不会添加数                      --据select*from xiaopiao--查看小票表中存储的数据

 

转载于:https://www.cnblogs.com/zyg316/p/5585936.html

你可能感兴趣的文章
JQueryMobile页面跳转参数的传递解决方案
查看>>
初识docker
查看>>
大话重构连载11:小步快跑是这样玩的
查看>>
CSS 3 学习笔记
查看>>
2018秦皇岛ccpc-camp Steins;Gate (原根+FFT)
查看>>
今天写了返回顶部(时间长了差点忘了)
查看>>
变量提升和执行环境对象
查看>>
记一次Android数据库升级bug
查看>>
Ubuntu中安装MySql与简单操作
查看>>
Linux 0.11下信号量的实现和应用
查看>>
准备Activiti环境(2)
查看>>
TouchWX Calender代码注释
查看>>
操作系统学习笔记(四) 存储模型和虚拟内存
查看>>
iKcamp|基于Koa2搭建Node.js实战(含视频)☞ 规范与部署
查看>>
中点画圆算法java实现
查看>>
unicode 与 utf-8 编码概念及区别
查看>>
vue 实现聊天框滚动到底
查看>>
python_63_装饰器6
查看>>
网站遇到攻击怎么办?常见攻击有哪些?(转)
查看>>
python文本处理练习-4
查看>>