[TYPO3-core] RFC #10003: t3lib_db explainOutput does not work with tablealias

Dan Osipov dosipov at phillyburbs.com
Wed Dec 9 14:20:51 CET 2009


Reminder

Dan Osipov
Calkins Media
http://danosipov.com/blog/

Dan Osipov wrote:
> This is an SVN patch request.
> 
> Type: Bugfix
> 
> Bugtracker references:
> http://bugs.typo3.org/view.php?id=10003
> 
> Branch: 4.2, Trunk
> 
> Problem:
> 
> Using table aliases in an SQL having t3lib_db::explainOutput ==1 causes 
> mysql errors as t3lib_db::explain function calles explain the executed 
> query and uses returned tablenames to "SHOW INDEX FROM" it. The problem 
> with this is that col 'table' returned by explain can be an alias from a 
> table and then "SHOW INDEX FROM " returns in "table does not exist" error.
> 
> code:
> $GLOBALS['TYPO3_DB']->exec_SELECTgetRows('a.uid,b.uid','be_users 
> a,be_users b','1');
> produces:
> caller t3lib_DB::exec_SELECTquery
> ERROR Table 'DBNAME.b' doesn't exist
> lastBuiltQuery SELECT a.uid,b.uid
> FROM be_users a,be_users b
> WHERE
> 1
> 
> 
> Solution:
> Prior to finding the index of the table, check that the table exists.
> Thanks to Nabil Saleh for the patch!
> 


More information about the TYPO3-team-core mailing list