Symptoms
You try to execute a complex SQL statement in a Microsoft Host Integration Server 2010 environment. When the SQL statement contains a question mark ('?') literal, Microsoft OLE DB Provider for DB2 may fail.
For example, you create a new Microsoft SQL Server Integration Service (SSIS) package, and you insert a Data Flow package. You create an OLE DB source, and you insert an SQL statement that contains a '?' literal as in the following example:
SELECT NDECRE || '?'
FROM TIGS981
FETCH FIRST 10 ROWS ONLY
In this scenario, when you close the dialog box, a red bullet is displayed. Additionally, in the Errors pane, you receive the following error message:
Validation error.
Data Flow Task: The SQL command requires 1 parameters, but the parameter mapping only has 0 parameters.
Cause
This problem occurs because the provider incorrectly interprets the '?' literal as a parameter instead of as a string.
Resolution
The hotfix that resolves this issue is included in cumulative update package 1 for Host Integration Server 2010.
For more information about how to obtain the cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:
2533330 Cumulative update package 1 for Host Integration Server 2010
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.