if exists(select name from sysobjects where name = 'mp_importatten' and type ='p')
drop proc mp_importatten
gocreate proc mp_importatten
@is_path varchar(1000)
as
exec('insert into xy_at_atten(at_no,at_date)
select [no],attendate FROM opendatasource(''Microsoft.Jet.OLEDB.4.0'','''+@is_path+''';''admin'';'''',atteninfo1)')goexec mp_importatten
@is_path = 'd:\200703.mdb'第 2 行: ';' 附近有语法错误。

解决方案 »

  1.   

    select 一句改成下面的:我当atteninfo1是你的表名
    select [no],attendate FROM opendatasource(''Microsoft.Jet.OLEDB.4.0'',''Data Source="'+@is_path+'";User ID=Admin;Password='' )...atteninfo1')
      

  2.   

    --try
    create proc mp_importatten
    @is_path varchar(1000)
    as
    exec('select [no],attendate FROM opendatasource(''Microsoft.Jet.OLEDB.4.0'',''Data Source='+@is_path+';User ID=admin;Password='')...表名')go
      

  3.   

    declare @is_path varchar(100),@s varchar(1000)set @is_path ='D:\200703.Mdb'set @s='select [no],attendate FROM opendatasource(''Microsoft.Jet.OLEDB.4.0'',''Data Source='+@is_path+';User ID=admin;Password='')...atteninfo1'exec(@s)
    --或set @s='select [no],attendate FROM OPENROWSET(''Microsoft.Jet.OLEDB.4.0'','''+@is_path+''';''admin'';'''',atteninfo1)'exec(@s)