insert into 语句为什么不执行呀???
begin
/*处理postrvu表*/
declare @oldMaxDate2 datetime /*提取本地"posrvu"中日期最大值*/
select oldMaxDate2=maxdatetime from maxindex where table_nm='2'
delete from posrvu where rpt_dt=@oldMaxDate2
/*导入到本地posrvu 表中*/
insert into posrvu select * from OPENDATASOURCE('SQLOLEDB','integrated security=SSPI;data source=cshis;persist security info=false').thotel.dbo.posrvu where rpt_dt>=@oldMaxDate2
/*查找上次导入的最大日期值*/
declare @newMaxDate2 datetime
/*更新maxindex表的第二条记录*/
select newMaxDate2=max(rpt_dt) from OPENDATASOURCE('SQLOLEDB','integrated security=SSPI;data source=cshis;persist security info=false').thotel.dbo.posrvu
update maxindex set maxdatetime=@newMaxDate2 where table_nm='2'
end
问题点数:0、回复次数:6Top
1 楼hdhai9451(☆新人类☆)回复于 2004-09-03 22:23:05 得分 0
表的結構是否一樣?Top
2 楼lzymagi(逸)回复于 2004-09-03 22:24:04 得分 0
表结构如何呢?Top
3 楼szh3210(/+/=〆)回复于 2004-09-03 22:31:18 得分 0
建议指定列,不要用*Top
4 楼xta6714(陌生人的城市)回复于 2004-09-03 22:38:23 得分 0
表的结构是完全一样的,我认为是那个参数的问题如果换成实际的参数就没问题,比如
'2004-9-1',就可以,这是为什么呀,sql server 里面有没有宏替换之类的语法呀?Top
5 楼pasanal(coolcox)回复于 2004-09-03 23:44:37 得分 0
不会是你的DataTime类型错误吧?你定义参数为DataTime,在sqlserver里它会定义成
带小时分秒的,而你现在使用的时间具体值为'2004-9-1',是否改变变量为Date型?Top
6 楼xta6714(陌生人的城市)回复于 2004-09-04 08:10:36 得分 0
问题解决了!!!Top




