|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
由于ASP还是一种Script语言所没除了大量使用组件外,没有办法提高其工作效率。它必须面对即时编绎的时间考验,同时我们还不知其背后的组件会是一个什么样的状况;媒介:
用过很多序号的办法,indentity或newid(),都欠好用,本人写了一个,这个序号的特性是:每次取响应表中的体系当天最年夜序号,假如当天无纪录,则主动天生一个当天序号
1.建种子表,这个表用来保留各个表今朝已利用到的最年夜序号
--种子表
createtableSEED(
BMvarchar(20)notnull,--表名
BHvarchar(12)notnull,--种子编号
constraintPK_SEEDprimarykey(BM)
)
go
2.当我们建一个新表时,同时把这个表名纪录到种子表中,如:
--向种子中表增加纪录
insertintoSEED(BM,BH)values(tablename,200211070000)
go
3.在数据库建一存储历程,主动天生新编号,此编号取当地利间,以是很多时分查询某些天的纪录时,这个序号十分有效
--为参数传送来的某个表主动天生编号
ifexists(select*fromsysobjectswherename=proc_getbh)
dropprocedureproc_getbh
go
createprocedureproc_getbh@BMvarchar(20)
as
declare@BHchar(12)
declare@TODAYchar(8)
begin
select@TODAY=convert(char(8),getdate(),112)
select@BH=BHfromSEEDwhereBM=@BM
if@BHisnullorleft(@BH,8)@TODAY
begin
select@BH=@TODAY+0000
end
select@BH=left(@BH,8)+right(0000+ltrim(convert(char(4),convert(int,right(@BH,4)))+1),4)
updateSEEDsetBH=@BHwhereBM=@BM
select@BHASBH
end
4.实比方下:
对表xxx主动天生新编号
setrs=conn.execute("proc_getbh@BM=xxx")
如许,rs("BH")就是你失掉的新编号
</p>asp,jsp,php是web开发的三大技术,asp简单易用且有microsoft做靠山,jsp功能强大是因为有java支持,php则开源跨平台.在国内,asp应用范围最广,jsp发展势头最猛,php则处于劣势.这可能与公司的支持以及技术的培训有关. |
|