Microsoft Dynamics NAV-SQL Challenge: The Curse of the Cursor

Consultants and users alike are discussing "issues with cursors in NAV on SQL" on the web, even several Microsoft/NAV teams blog about it. But what the heck is such a "cursor" thingy, and what's the problem with it?

Simplified, an SQL cursor is a temporary declared SQL object - similar to a variable - which is used to store a result-set (= multiple) of records. Such a "cursor" could be used to browse through the records, e.g. within a loop.

Keep in mind that our "goode olde" NAV was originally designed  for its own proprietary platform - the native C/SIDE Server. This "oldtimer" works on "Index Sequential Access Methods" (ISAM), and this is still shown in the NAV code processing:


Requires FREE Membership to View

Become a Member Joining gives you free, unlimited access to news, analysis, white papers, case studies, product brochures, and more, and it’s all FREE. You’ll also receive periodic email newsletters with the latest relevant articles and content updates.
About Jörg A. Stryk

Jörg A. Stryk has worked with Microsoft Dynamics NAV since 1997, version 1.20.

Being project-manager, consultant, administrator, developer or supporter on Microsoft partner-sites and NAV customer-sites, he has thoroughly explored nearly all areas of the application and its technology.

Since 2003 he is focusing on "Dynamics NAV & SQL Server Performance Optimization and Troubleshooting", founding his company "STRYK System Improvement" in 2006. As a freelance consultant, he is supporting Microsoft Dynamics partners and customers with their NAV/SQL projects worldwide.

His book "The NAV/SQL Performance Field Guide" (ISBN 978-3-8370-1442-6) is published in Europe, the United Kingdom and North America.

In recognition of his valuable participation in various NAV communities, he received the Microsoft award "Most Valuable Professional" (MVP) for MS Dynamics NAV in 2007, 2008 and 2009.

Read full bio...