设为首页   加入最爱           最新更新:全方位英文文章资料库
 
资料坊搜索: 标题 全文     
ASP自动生成编号的方法
   首页>>YesizeCOM>>电脑技能坊>>ASP>>正文       
 
广告招租,e-mail:yesize@hotmail.com

广告招租,e-mail:yesize@hotmail.com


     用过许多序号的方法,indentity 或 new id() ,都不好用,自己写了一个,这个序号的特点是:每次取相应表中的系统当天最大序号,如果当天无记录,则自动生成一个当天序号。

  1.建种子表,这个表用来保存各个表目前已使用到的最大序号

  --种子表

  create table SEED (
   BM varchar(20) not null, --表名
   BH varchar(12) not null, --种子编号
   constraint PK_SEED primary key(BM)
   )
   go
  
   2.当我们建一个新表时,同时把这个表名记录到种子表中,如:

  --向种子中表添加记录

   insert into SEED (BM,BH) values(tablename,200211070000)
   go

  3.在数据库建一存储过程,自动生成新编号,此编号取当天时间,所以许多时候查询某些天的记录时,这个序号非常有用。

  --为参数传递来的某个表自动生成编号

  if exists (select * from sysobjects where name=proc_getbh)
   drop procedure proc_getbh
   go
   create procedure proc_getbh @BM varchar(20)
   as
   declare @BH char(12)
   declare @TODAY char(8)
   begin
   select @TODAY=convert(char(8),getdate(),112)
   select @BH=BH from SEED where BM=@BM
   if @BH is null or left(@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)
   update SEED set BH=@BH where BM=@BM
   select @BH AS BH
   end

  4.实例如下:

  对表xxx自动生成新编号

  set rs=conn.execute("proc_getbh @BM=xxx")
   这样,rs("BH")就是你得到的新编号。(aspcool)


上一篇:不用Golobal.asa和session实现在线人数统计 下一篇:在ASP中使用简单Java类

版权说明:作品来源于网上,版权归作者所有,如果无意中侵犯了您的版权,请来信告知,本站将在3个工作日内删除。yesize@hotmail.com
  热门小游戏分类 
射击小游戏 连连看小游戏
台球小游戏 成人小游戏
CS小游戏 化妆小游戏
赛车小游戏 休闲小游戏
篮球小游戏 换装小游戏
儿童小游戏 牛牛小游戏
麻将小游戏 冒险小游戏
美媚小游戏 益智小游戏
体育小游戏  
Society Recreation & Sports
Travel & Leisure Communications
Vehicles Computers
Fashion Arts & Entertainment
Reference & Education Disease & Illness
Writing & Speaking Politics
Product Reviews Food & Beverage
Finance Internet Business
Self Improvement Home & Family
Health & Fitness Business
最新更新内容
警惕“公务员报考热”背
公务员考试不是丈母娘考
一名新公务员的自白:我
公务员考脑筋急转弯与挂
北努斗:2006行政能力测
大讨论:06行测BT题目大
过来人回忆:当年,我也
一家之言:公务员热折射
公务员考试申论要是有正
数十万大学生走进公务员
      粤ICP备05005424         Copyright ©2000 - 2004 Yesize.COM