日期:2014-05-19  浏览次数:20470 次

求教动太导入 access 过程
if   exists(select   name   from   sysobjects   where   name   =   'mp_importatten '   and   type   = 'p ')
drop   proc   mp_importatten
go

create   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) ')

go

exec   mp_importatten
@is_path   =   'd:\200703.mdb '

第   2   行:   '; '   附近有语法错误。


------解决方案--------------------
; ' 'admin ' ';两边改用,号试试
------解决方案--------------------
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)