• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > 小系统单据自动生成存储过程

小系统单据自动生成存储过程

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了自动生成,存储过程等相关知识,希望本文的分享对您有所帮助

此处判断有两种方法:一种是根据传入6位日期判断;另一种根据单据创建日期字段(前提:表有创建时间字段)

代码如下:
create table [order]
(
code varchar(50),
createtime datetime
)

--应用 usp_ordernumbergenerate(@prefix = 'PRC100701')
--传入前缀 大类+单据编码+6位日期
--获取当日该类单据最大流水号(需按日归零)
--此处判断有两种方法:一种是根据传入6位日期判断;另一种根据单据创建日期字段(前提:表有创建时间字段)
create procedure usp_OrderNumberGenerate
@prefix varchar(50)
as
declare @count int
declare @midcode varchar(3)
declare @Digits int = 3
declare @orderNumber varchar(50)

select @count = COUNT(*) from [order] where DATEDIFF(day, createtime, GETDATE()) = 0
if(@count = 0) --当日无单据情况 流水号为001
--print @count
select @orderNumber = @prefix + '001'
else --当日有单据情况 最大流水号+1
select @midcode = max(substring(midcode, 10, 3)) + 1
from [order]
where DATEDIFF(day, createtime, GETDATE()) = 0

select @orderNumber =@prefix + RIGHT(REPLICATE('0', @Digits)
+ CAST(@midcode as VARCHAR), @Digits)

print @ordernumber

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • mysql如何让自增id归0解决方案
  • 数据库数据对比自动生成sql教程分享
  • 在数据库中自动生成编号的实现方法分享
  • 小系统单据自动生成存储过程
  • SQL Server自动生成日期加数字的序列号
  • Mysql中存储UUID去除横线的方法

相关文章

  • 2018-12-05MySQL常见SQL语句使用方法总结
  • 2018-12-05SQL Server提示"选定的用户拥有对象,所以无法除去该用户”
  • 2018-12-05MYSQL常见出错代码对照
  • 2018-12-05推荐10款涉及参数特效(收藏)
  • 2017-05-11MySQL文本文件导入及批处理模式应用说明
  • 2018-12-05RocksDB上锁机制的实例详解
  • 2018-12-05MySQL中REPLACE INTO和INSERT INTO的区别分析
  • 2018-12-05关于外网访问的详细介绍
  • 2017-09-17MySQL Cluster 备份与恢复
  • 2018-12-05使用mysql_connect()函数连接数据库(PHP操作MySQL数据库的方法一)

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • mysql 常用命令集锦(Linux/Windows)
    • Oracle RAC配置ssh用户等价
    • MySQL 教程之SQL表的基本操作
    • SQLServer 快速备份的十种方法
    • mongoDB是怎么实现分页的?
    • MySQL优化-常用函数代码详解(图)
    • AspNetPager分页控件 存储过程
    • 详解如何使用DockerHub官方的MySQL镜像
    • 详解MySql5.6.35winx64安装详细教程
    • 同时安装vs2005团队开发版和sql 2005企业版的方法(downmoon原作)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有