Search code examples
mysqlperformancedatabase-performancedatabase-cursor

Cursors on MySQL - Good or Bad


I have always heard people saying bad about using cursors and this is especially in Microsoft SQL Server as they are very slow.

Is this the case with Cursors on MySQL as well? Does cursors in MySQL reduce performance as well? Can someone please advice on the usage of cursors in MySQL?


Solution

  • Most modern databases (including MySQL) are designed to perform set based operations. The problem with cursors is that they perform row based (or procedural) operations. Because of this you will almost always see a performance hits when you are using cursors to do a job that can be done without cursors on a modern DBMS.

    Take a look at this article, which does a decent job going over the two. It is written with SQL Server in mind but most of the concepts apply.