sql导入表错误
我用SQL导入Execl表:
CREATE PROCEDURE pro_import
@tabName1 nchar(50),
@tabName2 nchar(50)
AS
IF EXISTS(SELECT name
FROM sysobjects
WHERE name = N 'temPeishong '
AND type = 'U ')
DROP TABLE temPeishong --删除原表
GO
SELECT identity(int ,1,1) as SN,单位名称,货号,品名,规格,数量,单位,零售总额,开单日期
into temPeishong
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0 ',
'Data Source=@tabName1;User ID=Admin;Password=;Extended properties=Excel 5.0 ')...[Sheet1$]
-----------------------
IF EXISTS(SELECT name
FROM sysobjects
WHERE name = N 'temPeishong '
AND type = 'U ')
DROP TABLE temPeishong --删除原表
GO
-- ============================================
--销售出库明细表批发查询表(temPifa)
SELECT identity(int ,1,1) as SN,单位名称,货号,品名,规格,数量,单位,未结算价税,开单日期
into temPifa
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0 ',
'Data Source=@tabName2;User ID=Admin;Password=;Extended properties=Excel 5.0 ')...[Sheet1$]
GO
为什么会报这样的错呢?我执行时也没有打开这个Execl表
服务器: 消息 7314,级别 16,状态 1,行 1
OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0 ' 不包含表 'Sheet1$ '。该表可能不存在,或当前用户没有使用该表的权限。
服务器: 消息 7314,级别 16,状态 1,行 3
OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0 ' 不包含表 'Sheet1$ '。该表可能不存在,或当前用户没有使用该表的权限。
------解决方案----------------------try
CREATE PROCEDURE pro_import
@tabName1 nchar(50),
@tabName2 nchar(50)
AS
IF EXISTS(SELECT name
FROM sysobjects
WHERE name = N 'temPeishong '
AND type = 'U ')
DROP TABLE temPeishong --删除原表
--GO
exec( '
SELECT identity(int ,1,1) as SN,单位名称,货号,品名,规格,数量,单位,零售总额,开单日期
into temPeishong
FROM OpenDataSource( ' 'Microsoft.Jet.OLEDB.4.0 ' ',
' 'Data Source= '+@tabName1+ ';User ID=Admin;Password=;Extended properties=Excel 5.0 ' ')...[Sheet1$]
')
-----------------------
IF EXISTS(SELECT name
FROM sysobjects
WHERE name = N 'temPeishong '
AND type = 'U ')
DROP TABLE temPeishong --删除原表
--GO
-- ============================================
--销售出库明细表批发查询表(temPifa)
exec( '
SELECT identity(int ,1,1) as SN,单位名称,货号,品名,规格,数量,单位,未结算价税,开单日期
into temPifa
FROM OpenDataSource( ' 'Microsoft.Jet.OLEDB.4.0 ' ',
' 'Data Source= '+@tabName2+ ';User ID=Admin;Password=;Extended properties=Excel 5.0 ' ')...[Sheet1$]
')
GO
------解决方案--------------------FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0 ',
'Data Source=@tabName2;User ID=Admin;Password=;Extended properties=Excel 5.0 ')...[Sheet1$]
楼主的这一段问题出在变量@tabName2