|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
用过许多序号的方式,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")就是你得到的新编号。 返回类别: 教程 上一教程: 利用XSL和ASP在线编辑XML文档 下一教程: ASP文件上传原理分析及实现实例 您可以阅读与"ASP自动生成编号的方式"相关的教程: · ASP写的自动生成SELECT表单的函数 · 用ASP自动生成SQL数据库的安装源程序 · ASP自动生成JAVASCRIPT检验函数 · ASP中存储过程调用的两种方法,以及不采用存储过程的方法比较 · ASP+FSO+框架实现ASP生成HTM并分页的方式(批量) |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |