Това всъщност е грешка в CodeIgniter. В ODBC драйвера (/system/database/drivers/odbc/odbc_driver.php), когато изберете таблица, тя използва следния метод:
function _from_tables($tables)
{
if ( ! is_array($tables))
{
$tables = array($tables);
}
return '('.implode(', ', $tables).')';
}
Той се опитва да групира няколко избрани таблици заедно, за да наложи приоритет на операторите, това трябва да работи добре, ако използвате повече от една таблица, но с една таблица той все още се опитва да я групира, което причинява грешката, която получавате.
За съжаление, не вярвам, че е възможно да разширите тези драйверни файлове, така че може да се наложи да редактирате самия основен файл. Обърнете внимание на това, в случай че трябва да актуализирате CodeIgniter в бъдеще, ще трябва да промените метода на нещо като следното:
function _from_tables($tables)
{
if ( ! is_array($tables))
{
return strstr($tables, ',') ? '('.$tables.')' : $tables;
}
else
{
return count($tables) > 1 ? '('.implode(', ', $tables).')' : end($tables);
}
}