位置: 编程技术 - 正文

SQL Server自动生成日期加数字的序列号(sql server自动生成id)

编辑:rootadmin
USE MASTER GO IF EXISTS(SELECT * FROM dbo.sysdatabases WHERE name='my_test_database') DROP DATABASE [my_test_database] GO CREATE DATABASE [my_test_database] GO USE [my_test_database] GO CREATE TABLE [my_table] ([my_id] VARCHAR()) GO --存储过程开始 : CREATE PROCEDURE get_new_id @NEW_ID VARCHAR() OUTPUT AS BEGIN DECLARE @DATE DATETIME DECLARE @YYYY VARCHAR(4) DECLARE @MM VARCHAR(2) DECLARE @DD VARCHAR(2) --保存取得的当前时间 : SET @DATE = GETDATE() SET @YYYY = DATEPART(yyyy, @DATE) SET @MM = DATEPART(mm, @DATE) SET @DD = DATEPART(dd, @DATE) --位数不够的前面补0 SET @YYYY = REPLICATE('0', 4 - LEN(@YYYY)) + @YYYY SET @MM = REPLICATE('0', 2 - LEN(@MM)) + @MM SET @DD = REPLICATE('0', 2 - LEN(@DD)) + @DD --取出表中当前日期的已有的最大ID SET @NEW_ID = NULL SELECT TOP 1 @NEW_ID = [my_id] FROM [my_table] WHERE [my_id] LIKE @YYYY+@MM+@DD+'%' ORDER BY [my_id] DESC --如果未取出来 IF @NEW_ID IS NULL --说明还没有当前日期的编号,则直接从1开始编号 SET @NEW_ID = (@YYYY+@MM+@DD+'') --如果取出来了 : ELSE BEGIN DECLARE @NUM VARCHAR(8) --取出最大的编号加上1 : SET @NUM = CONVERT(VARCHAR, (CONVERT(INT, RIGHT(@NEW_ID, 8)) + 1)) --因为经过类型转换,丢失了高位的0,需要补上 SET @NUM = REPLICATE('0', 8 - LEN(@NUM)) + @NUM --最后返回日期加编号 : SET @NEW_ID = @YYYY+@MM+@DD + @NUM END END GO --执行次调用及插入数据测试 : DECLARE @N INT SET @N = 0 WHILE @N < BEGIN DECLARE @NEW_ID VARCHAR() EXECUTE get_new_id @NEW_ID OUTPUT INSERT INTO [my_table] ([my_id]) VALUES (@NEW_ID) SET @N = @N + 1 END SELECT * FROM [my_table] GO --输出结果

推荐整理分享SQL Server自动生成日期加数字的序列号(sql server自动生成id),希望有所帮助,仅作参考,欢迎阅读内容。

SQL Server自动生成日期加数字的序列号(sql server自动生成id)

文章相关热门搜索词:sql server自动生成id,sql server自动生成行号,sqlserver自动生成编号,SQL server自动生成36个id,SQL server自动生成36个id,sql server自动生成id,SQL server自动生成36个id,sql server自动生成语句,内容如对您有帮助,希望把文章链接给更多的朋友!

远程连接局域网内的SQL Server 的方法 第一个错误"SQLServer不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。一般说来,有以下几种可能性:1、SQLServer

SQL Server 索引维护sql语句 使用以下脚本查看数据库索引碎片的大小情况:DBCCSHOWCONTIGWITHFAST,TABLERESULTS,ALL_INDEXES,NO_INFOMSGS以下使用脚本来处理维护作业:/*Performa'USEdatabasename'toselectt

从两种SQL表连接写法来了解过去 例如:一个二表连接的SQL,有两种写法:(1)selectA.c1,A.c2,B.c1,B.c2fromtable1A,table2BwhereA.id=B.id(2)selectA.c1,A.c2,B.c1,B.c2fromtable1Ajointable2BonA.id=B.id哪种写法好呢?现在提

标签: sql server自动生成id

本文链接地址:https://www.jiuchutong.com/biancheng/349427.html 转载请保留说明!

上一篇:AspNetPager分页控件 存储过程(asp 分页)

下一篇:远程连接局域网内的SQL Server 的方法(远程连接局域网内的电脑)

  • 计提增值税的会计凭证
  • 年末计提坏账准备金额怎么算
  • 劳务报酬怎么申报记账凭证
  • 社保免征还需要申报吗
  • 生活记账技巧
  • 成品油购进数据未同步怎么办
  • 自然人税收管理系统换了电脑怎么恢复数据
  • 没有认证的增值税专用发票怎么做账
  • 预售款计入收入吗
  • 公司冲账发票做不够该如何处理合适?
  • 增值税附征优惠政策
  • 单位体检如何入账
  • 代国外佣金代扣税金账务怎么处理?
  • 股权稀释需要交税吗
  • 计提公司所得税分录
  • 劳务报酬代扣代缴个人所得税怎么做账
  • 进项票异常如何自查
  • 如何确定连锁店的纳税地点?
  • 公允价值变动损益属于损益类的
  • 出口企业免抵增值税
  • 待处理流动资产损失属于什么科目
  • 押金拿不到怎么解决
  • 发票已认证次月冲红
  • 支付拆迁补偿款做账
  • win11怎么用
  • 如何在pc桌面上添加文件
  • 长期应收款在哪一章
  • 公司为员工缴纳社保的法律规定
  • 金融企业财务规则(征求意见稿)
  • 购入专利权属于
  • 2023前端面试题目
  • php实现批量删除
  • 企业在计提短期借款利息时可能用到的会计科目有
  • 厂房和设备折旧年限
  • 增值税普通发票需要交税吗
  • 银行罚息是财务收入吗
  • 劳务支出和应付职工薪酬
  • python中map和filter有啥区别
  • 成本收入核算表
  • 个税汇算清缴是退税吗
  • 交易性金融资产包括哪些项目
  • 商品周转率公式
  • 强制执行的款在执行局领取吗
  • 水利基金减免
  • 工程款发票开给委托方要如何处理?
  • 租金收入确认收入时间
  • 天猫佣金是什么意思
  • 无法支付的款项应计入
  • 私人银行卡给公司走账有影响吗
  • centos opencl
  • 注册表及其作用
  • 常用宏操作的参数设置方法
  • xp系统蓝屏解决
  • win108080端口怎么打开
  • win8如何添加我的电脑
  • win10系统怎么刻录光盘?win10刻录光盘详细图文步骤
  • win10推送升级win11
  • bootstrap table sum总数量统计实现方法
  • cocos2dx-3.1.1 labelttf与label
  • cssdeck
  • perl-v
  • JavaScript打开WPS
  • python的判断
  • js中的$是什么意思
  • jquery可以实现哪些效果
  • 一篇文章让你彻底读懂德国历史
  • [置顶]津鱼.我爱你
  • unity的shader用法
  • javascript中的getElementById
  • canvas基础
  • bootstrap日期控件背景为白
  • 有哪些推荐阅读的书
  • 电子发票密码在哪里看
  • 河南省低保信息查询
  • 个体工商户税务申报怎么操作流程
  • 增值税抵扣联怎么装订
  • 机动车检测属于哪个税收
  • 发票 报销流程
  • 漏报原因
  • 辽宁省耕地占用税适用税额表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设