数据库设计主键自动编号问题
时间:2011-12-19
来源:互联网
SQL数据库中设计时有一个报修表(报修单号,设备名称,报修时间),想让用户在使用时只需要输入设备名称,然后自动生成报修单号和报修时间,但是不知道怎么写代码,因为不是同步输入的,所以显示主键不能为空,怎么办?求大侠指教!报修单号形式如BX2011122001,
作者: fgh013 发布时间: 2011-12-19
用触发器~
作者: sjcss 发布时间: 2011-12-19
本来想用来着'但是代码不太会写'可否讲的详细一点'谢谢!
作者: fgh013 发布时间: 2011-12-20
用函数吧~
SQL code
在字段的默认值上设为dbo.auto_bxdh()就可以了
SQL code
create FUNCTION auto_bxdh() RETURNS VARCHAR(20) as begin declare @dh varchar(20) set @dh='' select @dh=max(报修单号) from 报修表 where 报修单号 like 'BX'+replace(substring(convert(varchar(20),getdate(),120),1,10),'-','')+'%' if(@dh<>'') set @dh=substring(@dh,1,10)+right('0'+cast(cast(right(@dh,2) as int)+1 as varchar(2)),2) else set @dh='BX'+replace(substring(convert(varchar(20),getdate(),120),1,10),'-','')+'01' return @dh end
在字段的默认值上设为dbo.auto_bxdh()就可以了
作者: sjcss 发布时间: 2011-12-20
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28