create procedure dt_ae108dataset @dd_date datetime,@dm int as
if not exists(select * from Aed108 where month(dd_date)=month(@dd_date))
insert into aed108 values (@dd_date,@dm)
if not exists(select * from Aed108 where month(dd_date)=month(@dd_date))
insert into aed108 values (@dd_date,@dm)
@a datetime,
@b int
as
if not exists(select 1 from aed108 where datediff(month,dd_date,@a)=0)
insert aed108 (dd_dat,dm) values(@a,@b)
@dd_date datetime,
@dm int
as
if not exists(select 1 from Aed108 where year(dd_date)=year(@dd_date) and month(dd_date)=month(@dd_date))
while @dd_date>=dateadd(month,-1,dateadd(dd,1,@dd_date))
begin
insert Aed108 select @dd_date,@dm
set @dd_date=@dd_date-1
end
if not exists( select * from Aed108
where year(dd_date) like datepart(year,@dt_userdate)
AND month(dd_date) like datepart(month,@dt_userdate))2、但关键的是下面,你写的是加入这一天的数据,我的意思是加入一个月的,例如9月,那么就要加入1~30天30条记录!日期分别是2003-09-01~2003-09-30啊,同样10月的话就加入1~31天31条数据啊
@dd_date datetime,@dm int
as
declare @n tinyint,@dd datetime
select @n=1
if not exists(select * from Aed108 where month(dd_date)=month(@dd_date))
begin
/*先计算出该月得第一天*/
select @dd=dateadd(month,-1,dateadd(day,1,@dd_date))
while @n<=day(@dd_date)
begin
insert into aed108 select @dd,@dm
select @n=@n+1
/*望后加一天*/
select @dd=dateadd(day,1,@dd)
end
end
--run
exec dt_ae108dataset '2003-09-30',具体数值
@dd_date datetime,@dm int
as
declare @dd datetime
if not exists(select * from Aed108 where month(dd_date)=month(@dd_date))
begin
/*先计算出该月得第一天*/
select @dd=dateadd(month,-1,dateadd(day,1,@dd_date))
while datediff(day,@dd,@dd_date)<=0
begin
insert into aed108 select @dd,@dm
/*望后加一天*/
select @dd=dateadd(day,1,@dd)
end
end
--run,记得输入月份得最后一天
exec dt_ae108dataset '2003-09-30',具体数值
pengdali(大力 V3.0), 的也是只加入了这一天啊,sdhdy(大江东去...) ,的提示:错误213:出入错误;列名或提供的数目也表定义不匹配其它朋友的我还在试,谢谢大家帮忙