服务器: 消息 7399,级别 16,状态 1,行 16
OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0' 报错。验证失败。
[OLE/DB provider returned message: 无法启动应用程序。工作组信息文件丢失,或是已被其它用户以独占方式打开。]
OLE DB 错误跟踪[OLE/DB Provider 'Microsoft.Jet.OLEDB.4.0' IDBInitialize::Initialize returned 0x80040e4d: 验证失败。]
解决方案 »
- 本人比较笨..想了半天么想出这个SQL该怎么写
- 高手请进来帮忙,关于SQL参数的个数不确定,怎么写出比较通用的SQL语句
- 菜鸟请教一个触发器的问题!求求并谢谢各位了,真的很着急!@!
- MYSQL 频繁出现 Can't create UNIX socket (12) 错误
- 大大,sql导出excel 问题
- SQL的安全性?
- 100分求解。。有关树的递归查询
- 请问如何随时终止数据库备份呢?
- 在线等待给分,如何用EC把informix数据库中的一张表的记录取出,放到文本文件中,
- sql语句如何查询多个字段第一个字段有查询结果记录就不执行后面的查询条件了
- 如何访问远程的 SQL SERVER 数据库
- 一个编码形成问题(急),请各位英雄搭救.....
或者
Microsoft.Jet.OLEDB.4.0不支持
-- SQL Server 2000 Bible
-- Hungry Minds
-- Paul Nielsen-- Cape Hatteras Advntures v.2 sample database - Populate-- this script will populate the CHA2 database
-- from CHA1_Customers.mdb Access file
-- and CHA1_Schedule.xls Excel Spreadsheet
-- using distributed queries-- This script mirrors the CHA_Convert DTS package -----------------------------------------------------------
-----------------------------------------------------------USE CHA2-- establish Access Linked Server
EXEC sp_DropServer @server = 'CHA1_Customers'
go
EXEC sp_addlinkedserver
'CHA1_Customers',
'Access 2000',
'Microsoft.Jet.OLEDB.4.0',
'C:\SQLServerBible\CHA1_Customers.mdb'
go-- establish Excel Linked Server
EXEC sp_DropServer @server = 'CHA1_Schedule'
go
Execute sp_addlinkedserver
'CHA1_Schedule',
'Excel',
'Microsoft.Jet.OLEDB.4.0',
'C:\SQLServerBible\CHA1_Schedule.xls',
NULL,
'Excel 5.0'
goEXEC sp_helpserver-- Step 0: Initialize the Database
DELETE Customer
DELETE CustomerType
DELETE Event_mm_Customer
DELETE Event_mm_Guide
DELETE Tour_mm_Guide
DELETE Event
DELETE Tour
DELETE BaseCamp
DELETE Guide-- Step 1: Customer Types
SELECT DISTINCT CustomerType
FROM CHA1_Customers...Customers
WHERE CustomerType IS NOT NULLINSERT CustomerType(Name)
SELECT DISTINCT CustomerType
FROM CHA1_Customers...Customers
WHERE CustomerType IS NOT NULL SELECT * FROM CustomerType-- Step 2: Customers
SELECT DISTINCT ContactLastName, ContactFirstName, CustomerType
FROM CHA1_Customers...Customers
WHERE ContactLastName IS NOT NULLSELECT * FROM CustomerType
SELECT * FROM CHA1_Customers...CustomersINSERT Customer(LastName, FirstName, CustomerTypeID, Address,
City,Country, eMail, NickName,FirstTour, Medical)
SELECT DISTINCT ContactLastName, ContactFirstName, CustomerTypeID,BillingAddress,
City, Country, EMailAddress,NickName, FirstTour, HealthIssues
FROM CHA1_Customers...Customers C
LEFT OUTER JOIN CustomerType
ON C.CustomerType = CustomerType.[Name]
WHERE ContactLastName IS NOT NULLSELECT * FROM Customer-- Step 3: Base Camps
INSERT BaseCamp(Name)
SELECT DISTINCT [Base Camp]
FROM CHA1_Schedule...[Base_Camp]
WHERE [Base Camp] IS NOT NULLSELECT * FROM BaseCamp-- Step 4: Tours
INSERT Tour ([Name], BaseCampID)
SELECT DISTINCT Tour, BaseCampID
FROM CHA1_Schedule...Tour X
JOIN BaseCamp
ON X.[Base Camp] = BaseCamp.Name
WHERE Tour IS NOT NULLSELECT * FROM Tour-- Step 5: Guides
INSERT Guide(FirstName, LastName)
SELECT DISTINCT
LEFT([Lead Guide],CharIndex(' ', [Lead Guide])-1),
RIGHT([Lead Guide],Len([Lead Guide])-CharIndex(' ', [Lead Guide]))
FROM CHA1_Schedule...Lead_Guide
WHERE [Lead Guide] IS NOT NULLSELECT * FROM Guide-- Step 6: Events
SELECT DISTINCT *
FROM CHA1_Schedule...EventSELECT * FROM EventINSERT Event (TourID, DateBegin, Code)
SELECT DISTINCT Tour.TourID, [Date], EventCode
FROM CHA1_Schedule...Event X
JOIN Tour
ON X.Tour = Tour.Name-- Step 7: Event_mm_Customer
SELECT * FROM Event_mm_CustomerINSERT Event_mm_Customer(CustomerID, EventID)
SELECT DISTINCT Customer.CustomerID, Event.EventID
FROM CHA1_Schedule...Customer X
JOIN Customer
ON X.LastName = Customer.LastName
AND X.FirstName = Customer.FirstName
JOIN Event
ON X.EventCode = Event.Code-- Step 8: Event_mm_Guide
SELECT * FROM Event_mm_GuideINSERT Event_mm_Guide(EventID, GuideID, IsLead)
SELECT DISTINCT Event.EventID, Guide.GuideID, 1
FROM CHA1_Schedule...Event X
JOIN Guide
ON X.[Lead Guide] = Guide.FirstName + ' ' + Guide.LastName
JOIN Event
ON X.EventCode = Event.Code
-- Step 9: Tour_mm_Guide
INSERT Tour_mm_Guide (TourID, GuideID, QualDate)
SELECT DISTINCT Tour.TourID, Event_mm_Guide.GuideID, '1/1/2000'
FROM Tour
JOIN Event
ON Event.TourID = Tour.TourID
JOIN Event_mm_Guide
ON Event.EventID = Event_mm_Guide.EventIDSELECT * FROM Tour_mm_GuideSelect * from vTableRowCount
出错地方就在于
Execute sp_addlinkedserver
'CHA1_Schedule',
'Excel',
'Microsoft.Jet.OLEDB.4.0',
'C:\SQLServerBible\CHA1_Schedule.xls',
NULL,
'Excel 5.0' 根据提示:显示该EXCEL表正在使用,可以观察下,系统有没有该进程。
语句上是否有问题,
sp_addlinkedserver [ @server= ] 'server' [ , [ @srvproduct= ] 'product_name' ]
[ , [ @provider= ] 'provider_name' ]
[ , [ @datasrc= ] 'data_source' ]
[ , [ @location= ] 'location' ]
[ , [ @provstr= ] 'provider_string' ]
[ , [ @catalog= ] 'catalog' ] 应该问题就可以解决了!