title: How to debug MySQL/Doctrine2 Queries?
body: <p>I am using MySQL with Zend Framework &amp; Doctrine 2. I think even if you don't use Doctrine 2, you will be familiar with errors like </p>
  
  <blockquote>
    <p><code>SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ASC' at line 1</code></p>
  </blockquote>
  
  <p>The problem is that I don't see the full query. Without an ORM framework, I could probably echo the sql easily, but with a framework, how can I find out what SQL its trying to execute? I narrowed the error down to </p>
  
  <pre><code>$progress = $task-&gt;getProgress();
  </code></pre>
  
  <p><code>$progress</code> is declared </p>
  
  <pre><code>// Application\Models\Task
  /**
   * @OneToMany(targetEntity="TaskProgress", mappedBy="task")
   * @OrderBy({"seq" = "ASC"})
   */
  protected $progress;
  </code></pre>
  
  <p>In MySQL, the task class looks like </p>
  
  <pre><code>CREATE TABLE `tasks` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `owner_id` int(11) DEFAULT NULL,
    `assigned_id` int(11) DEFAULT NULL,
    `list_id` int(11) DEFAULT NULL,
    `name` varchar(60) NOT NULL,
    `seq` int(11) DEFAULT NULL,
    PRIMARY KEY (`id`),
    KEY `tasks_owner_id_idx` (`owner_id`),
    KEY `tasks_assigned_id_idx` (`assigned_id`),
    KEY `tasks_list_id_idx` (`list_id`),
    CONSTRAINT `tasks_ibfk_1` FOREIGN KEY (`owner_id`) REFERENCES `users` (`id`),
    CONSTRAINT `tasks_ibfk_2` FOREIGN KEY (`assigned_id`) REFERENCES `users` (`id`),
    CONSTRAINT `tasks_ibfk_3` FOREIGN KEY (`list_id`) REFERENCES `lists` (`id`)
  ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1$$
  </code></pre>