SQL Server 2000
jinzhili
这个作者很懒,什么都没留下…
展开
-
手工生成流水号
示例一。create table tb( BH CHAR(8) , COL INT)goDECLARE @HB CHAR(8)SELECT @HB=RIGHT(10000001+ISNULL(RIGHT(MAX(BH),7),0),7) FROM TBINSERT INTO TB(BH,COL) VALUES(@HB,1)SELECT * FROM TB 10000001原创 2006-10-31 23:11:00 · 950 阅读 · 0 评论 -
按日期生成编号
1create view v_GetDateasSELECT DT=CONVERT(CHAR(6),GETDATE(),12)GOCREATE TABLE TTB(BH CHAR(12) ,COL INT)GO DECLARE @DT CHAR(6),@NEWBH CHAR(12) SELECT @DT=DT FROM V_GETDATE SET @NEWBH=( SELE原创 2006-10-31 23:27:00 · 1176 阅读 · 0 评论 -
使用SQL Server 2000 设计数据库时会产生的设计错误
使用SQL Server 2000 设计数据库时会产生的设计错误在一个表内不能有多个varchar(8000) 或者 nvarchar(4000) 的字段。只能有一个因为,在SQL Server 中行是按页来进行存储的。一个页是8K,一行数据是不能拆分成多个页进行存储。解决的办法有:1. 拆分成多个表。2. 使用Text字段。Text是可以存储2G的。原创 2006-11-03 10:48:00 · 719 阅读 · 0 评论 -
保存数据时,发生截断字符的解决方法
保存数据时,发生截断字符的解决方法:关于在SQL Server 存储过程中判断的一点发现在进行Insert into 进行添加数据时,如果单用 @@ERROR 进行判断是不准确的。如果发生了输入信息超过了字段所定义的长度时,用 @@ERROR 尤其是在进行主从表添加时,如果这个错误发生在细表当中,这时就会产生很奇怪的情况,主表的单号是正确产生了,但是一看细表确没有信息。也没有相应的提示。在存储原创 2006-11-03 11:02:00 · 2219 阅读 · 0 评论 -
独立编号表,生成编号
create table tb_no( Name char(2) primary key , --编号种类的名称 Head nvarchar(10) not null default , --编号的前缀 CurrentNO int not null default 0, --当前的编号 BHLen int n原创 2007-06-20 22:46:00 · 958 阅读 · 0 评论 -
计算列的另类用法
--计算列的另类用法CREATE TABLE t2 (a int, b int, c int, x float, y AS CASE x WHEN 0 THEN a WHEN 1 THEN b ELSE c END)INSERT INTO [t2] ([a], [b], [c], [x])VALUES (1, 2, 3,原创 2007-08-01 11:31:00 · 885 阅读 · 0 评论 -
sql 带序号
CREATE TABLE [dbo].[auto] ( [id] int NULL, [name] char(10) COLLATE Chinese_PRC_CI_AS NULL, [age] int NULL)ON [PRIMARY]GOINSERT INTO [auto] ([id], [name], [age])VALUES (11, a, 12)GOINSERT INTO原创 2007-08-31 14:26:00 · 1325 阅读 · 0 评论 -
用于处理树的一个存储过程
一个用于树的存储过程create proc TS_P008 @in_deptid varchar(23), @in_len intAS-- 查询部门-- jzl-- 2006-12-15-- @in_deptid 当前节点的编号 第一次调用时为空-- @in_len 当前节点的编号的长度加2 if len(@in_deptid) =0 begin select b.dep原创 2007-06-05 21:43:00 · 765 阅读 · 0 评论