以下代码生成的编号长度为12,前6位为日期信息,格式为YYMMDD,后6位为流水号
来源:互联网 发布:网络侵害名誉权 编辑:程序博客网 时间:2024/05/16 06:37
引用邹建的:
--以下代码生成的编号长度为12,前6位为日期信息,格式为YYMMDD,后6位为流水号。
--创建得到当前日期的视图
CREATE VIEW v_GetDate
AS
SELECT dt=CONVERT(CHAR(6),GETDATE(),12)
GO
--得到新编号的函数
CREATE FUNCTION f_NextBH()
RETURNS char(12)
AS
BEGIN
DECLARE @dt CHAR(6)
SELECT @dt=dt FROM v_GetDate
RETURN(
SELECT @dt+RIGHT(1000001+ISNULL(RIGHT(MAX(BH),6),0),6)
FROM tb WITH(XLOCK,PAGLOCK)
WHERE BH like @dt+'%')
END
GO
--在表中应用函数
CREATE TABLE tb(
BH char(12) PRIMARY KEY DEFAULT dbo.f_NextBH(),
col int)
--插入资料
INSERT tb(col) VALUES(1)
INSERT tb(col) VALUES(2)
INSERT tb(col) VALUES(3)
DELETE tb WHERE col=3
INSERT tb(col) VALUES(4)
INSERT tb(BH,col) VALUES(dbo.f_NextBH(),14)
--显示结果
SELECT * FROM tb
/*--结果
BH col
------------------- -----------
050405000001 1
050405000002 2
050405000003 4
050405000004 14
- 以下代码生成的编号长度为12,前6位为日期信息,格式为YYMMDD,后6位为流水号。
- 以下代码生成的编号长度为12,前6位为日期信息,格式为YYMMDD,后6位为流水号
- 下面的代码生成长度为8的编号,编号以BH开头,其余6位为流水号。
- StringUtils.leftPad();//生成长度为多少位的数据,以什么进行补位
- 生成订单编号,编号格式(由编号类型编码+编号创建平台编码+6位日期+时间戳后4位+4位随机数组成),生成四位或者N位随机数字
- 流水号生成(格式:YYYYMMDD+6位流水号)
- 用正则表达式限制 输入必须为数字或字母,长度只能为4~6位
- 判断字符串为6~12位“字符”
- 整形转化为固定长度的字符串,适用于生成流水号
- 热点ssid生成名称规则prefix_xxxxxx,xxxxxx为有线网卡mac地址后6位
- 将4位长度的char转换为int类型
- 12.5 int长度为10位的原因(21.47亿)
- 长度为n的整数数组循环左移右移m位
- 截取字符串前N位为0的
- 正则表达式限制input输入内容为:小数点前不超过5位且小数点后不超过4位的数值
- 对x的进行转换,p为起始转化位,n为需要转换的长度
- HashMap中的为什么hash的长度为2的幂而&位必须为奇数
- Windows系统时间转化为固定长度为8位的字符串
- 小写金额转换成大写
- 压缩数据库的通用存储过程
- 自动下载shell脚本
- 一段jquery代码
- 托管与非托管间的代码级桥梁——C++/CLI
- 以下代码生成的编号长度为12,前6位为日期信息,格式为YYMMDD,后6位为流水号
- linux sd卡驱动分析,基于mini2440,sdio mmc sd卡驱动编写
- 应用实例,生成1000个5位的不重复随机数
- 用存储过程实现的分页程序
- 用户自动生成规则用户名和随机密码
- 练习-C语言恶搞程序
- 执行aspnet_regiis -i时出现错误:'没有启动服务器服务'
- Control Master简介
- 在文本文件中追加数据