asp+SQl 怎樣實現按規則自動生成編號?
楼主gracewlan(fine027)2006-12-25 11:16:31 在 Web 开发 / ASP 提问
table中有編號 bh這一字段
怎樣實現它以如下規則自動生成編號:
固定字頭:CMD
當前日期(格式為): YYYYMMDD(如20061225)
id:表中自動生成
bh就是這三個字符串相加得到的
问题点数:20、回复次数:8Top
1 楼pzhuyy(喝小酒泡尼姑)回复于 2006-12-25 11:22:39 得分 0
在sql表中将默认值指定一下就是了:)
如:REPLACE( STR(year(getdate()))+STR(month(getdate()))+STR(day(getdate())),' ',''))Top
2 楼pzhuyy(喝小酒泡尼姑)回复于 2006-12-25 11:25:48 得分 10
你可以在表中定义一个日期字段,如Cdate,保存20061225
然后将bh字段修改为: bh as 'CMD'+str(Cdate)+Str(id)
Top
3 楼shiliangdong(Stou)回复于 2006-12-25 11:52:06 得分 0
id默认值设定为convert(varchar(8),getdate(),112)Top
4 楼gracewlan(fine027)回复于 2006-12-25 13:45:43 得分 0
直接在asp中用腳本語言寫該怎麼實現呢
不想在表中新增字段了Top
5 楼calmjx()回复于 2006-12-26 16:52:53 得分 0
三个字符串联在一起.取库中最大的一个编号.然后加1
还是在数据库里面弄吧.省事.Top
6 楼frankfoot(简单就是美)回复于 2006-12-26 17:08:51 得分 10
以下例子是自动编号的例子,首先搜寻数据库中有无编号,如果没有,则适用日期编号,如果有则在最新的编号基础上自动+1
<%
sql2="select top 1 * from smt_Oitem where OrderDate='"&Date()&"' order by OrderId desc"
rs.open sql2,conn,1,1
if rs.recordcount<>0 then
session("ddh")=cStr(cLng(rs("OrderId"))+1)
else
session("ddh")=cStr(year(date())&month(date())&day(date())&"01")
set rs=nothing
conn.close
set conn=nothing
end if
%>
Top
7 楼gracewlan(fine027)回复于 2006-12-27 10:24:45 得分 0
設備發佈的頁面 , 有bh這一字段.我想實現的是,在打開發部頁面時,bh字段後面自動就有值出來.
照著樓上的意思,試驗了一下,可是結果不對喔.bh字段非但沒有自動出來,而且手動填寫的值提交之後,在數據庫表單中看到的bh項也是NULL,這是為什麼啊?Top
8 楼gracewlan(fine027)回复于 2006-12-28 09:53:46 得分 0
是不是因為session("ddh")=cStr(cLng(rs("OrderId"))+1)這句根本就沒有寫入值?
Top
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |








网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)