HomeFlySpeed Data ExportError: "Multiple-step OLE DB operation generated errors."

Error: "Multiple-step OLE DB operation generated errors."


Hi there,

Running an export using Flyspeed 5.0 (5022) against SQL Server I keep getting stuck with the following error:
"Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done
"
This occurs whether using the UI or using the console application.

Any ideas where I can start looking to resolve this?
Andrew | email
May 25 2010, 04:03 PM
Hello Andrew,

We need additional information about your problem:
1) What is the version of your SQL Server?
2) Does this error occur for some specific tables? Can you send us DDL script (create table :.) for a problem table?

Sincerely
Alex Smirnov
Alexander Smirnov | email
1 day, 21 hours since original post
It's SQL Server 2005. It does indeed occur for a particular table, CCMessageToUser (c.2,000,000 rows).

Here's the DDL for the whole database (four tables). It records information about email conversations. The other three tables extract just fine.

The target format is XML, so the date and time formats have been set to "yyyy-MM-dd","hh:mm:ss", and "yyyy-MM-dd'T'hh:mm:ss".

I've tried extracting to a single file, and to multiple files, and it makes no difference.

Thanks for taking a look.

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[CCMessageToUser](
[AuthRelationshipName] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[SignonID] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[MessageToUserID] [int] NOT NULL,
[POP3MessageID] [nvarchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[FIID] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[UserID] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[UserAgentID] [int] NULL,
[DateCreated] [datetime] NOT NULL DEFAULT (getdate()),
[Type] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT (N'GENERAL'),
[AccountID] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[AccountType] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[RTN] [nvarchar](9) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[HostAccountType] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[HostAccount1] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[HostAccount2] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[PaymentID] [int] NULL,
[Sender] [nvarchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT (N''),
[Subject] [nvarchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT (N''),
[Body] [ntext] COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT (N''),
[Status] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT (N'UNREAD'),
[BdcstMsgBatchID] [int] NULL,
CONSTRAINT [CCMessageToUser_PK] PRIMARY KEY CLUSTERED
(
[MessageToUserID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[MessageToUserIDsByDatabase](
[DatabaseID] [int] IDENTITY(1,1) NOT NULL,
[DatabaseName] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[StartMessageID] [int] NOT NULL,
[EndMessageID] [int] NOT NULL,
[NewStartMessageID] [int] NULL,
[NewEndMessageID] [int] NULL
) ON [PRIMARY]

GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[MessageToFIIDsByDatabase](
[DatabaseID] [int] IDENTITY(1,1) NOT NULL,
[DatabaseName] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[StartMessageID] [int] NOT NULL,
[EndMessageID] [int] NOT NULL,
[NewStartMessageID] [int] NULL,
[NewEndMessageID] [int] NULL
) ON [PRIMARY]

GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[CCMessageToFI](
[AuthRelationshipName] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[SignonID] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[MessageToFIID] [int] NOT NULL,
[FIID] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[UserID] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[UserAgentID] [int] NOT NULL,
[DateCreated] [datetime] NOT NULL DEFAULT (getdate()),
[Type] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT (N'GENERAL'),
[AccountID] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[AccountType] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[RTN] [nvarchar](9) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[HostAccountType] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[HostAccount1] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[HostAccount2] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[PaymentID] [int] NULL,
[BillID] [decimal](19, 0) NULL,
[Recipients] [nvarchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT (N''),
[Subject] [nvarchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT (N''),
[Body] [ntext] COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT (N''),
[Status] [nvarchar](32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT (N'NEW'),
[DeletedByUser] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL DEFAULT (N'0'),
[TRNuid] [nvarchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL CONSTRAINT [DF_CCMessageToFI_TRNuid] DEFAULT (N''),
[CLTCOOKIE] [nvarchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL CONSTRAINT [DF_CCMessageToFI_CLTCOOKIE] DEFAULT (N''),
CONSTRAINT [CCMessageToFI_PK] PRIMARY KEY CLUSTERED
(
[MessageToFIID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

Andrew | email
1 day, 23 hours since original post
Hello Andrew,

Unfortunately we cannot reproduce this issue on our test SQL Servers.
It seems it's a problem in your server.
Please visit http://support.microsoft.com/kb/269495 for information about the similar problem.

Start Registry Editor.
In the registry under HKEY_CLASSES_ROOT\CLSID, find the CLSID of the OLE DB provider. For example, the following registry key is for the Microsoft OLE DB Provider for SQL Server (SQLOLEDB):
HKEY_CLASSES_ROOT\CLSID\{0C7FF16C-38E3-11d0-97AB-00C04FC2AD98}
Click the CLSID, and then on the Edit menu, click Add Value and add the following registry value:
Value Name: OLEDB_SERVICES
Data Type: REG_DWORD
Value: 0xFFFFFFFF
Note To find the CLSID for the provider you are using, search for the provider's ProgID (SQLOLEDB, for example) in the registry under HKEY_LOCAL_MACHINE\SOFTWARE\Classes\. Under the ProgID, there will be a key named CLSID.

Please inform us about your results.

Sincerely
Alex Smirnov
Alexander Smirnov | email
4 days, 23 hours since original post
This topic is closed