Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

Microsoft distributes Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) or Microsoft SQL Server 2012 fixes in one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security updates that were included with the previous SQL Server 2008 R2 Service Pack 1 (SP1) or Microsoft SQL Server 2012 update release.

Symptoms

Consider the following scenario:

  • You upgrade from Microsoft SQL Server 2005 to Microsoft SQL Server 2008 or to Microsoft SQL Server 2008 R2 or to Microsoft SQL Server 2012.

  • You run a query that uses the sp_cursoropen stored procedure, and then specify the rowcount parameter to fetch the first several rows of a table.

In this scenario, the performance might be slower than if you run the same query in SQL Server 2005.

Cause

This issue occurs because the Query Optimizer uses a static cursor plan instead of a dynamic cursor plan. For a static cursor plan, SQL Server fetches all the rows and inserts them into the cursor work table. However, for a dynamic cursor plan, SQL Server fetches only the rows that are needed.

Resolution

Cumulative update information

SQL Server 2012

The fix for this issue was first released in Cumulative Update 1 for SQL Server 2012. For more information about this cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:

2679368 Cumulative update package 1 for SQL Server 2012Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2012 fix release. Microsoft recommends that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

2692828 The SQL Server 2012 builds that were released after SQL Server 2012 was released You must apply a SQL Server 2012 hotfix to an installation of SQL Server 2012.

Cumulative update package 5 for SQL Server 2008 R2 SP1

After you apply this hotfix, enable trace flag 4199.

The fix for this issue was first released in Cumulative Update 5. For more information about how to obtain this cumulative update package for SQL Server 2008 R2 SP1, click the following article number to view the article in the Microsoft Knowledge Base:

2659694 Cumulative update package 5 for SQL Server 2008 R2 SP1Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 R2 SP1 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

2567616 The SQL Server 2008 R2 builds that were released after SQL Server 2008 R2 SP1 was released

Workaround

To work around this issue, add the FAST query hint to the query.

More Information

For more information about how to use query hints, visit the following MSDN website:

General information about how to use query hintsFor more information about trace flag 4199, visit the following website:

General information about trace flag 4199

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.

Was this information helpful?

What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×