У меня FreeTDS установлен на сервере Ubuntu 14.04. Я подключаюсь к базе данных MSSQL следующим образом:
$db = new PDO('odbc:Driver=FreeTDS; Server=<IP Address>; Port=1433; Database=db_name; UID=user; PWD=password;');
Я запускаю следующий запрос:
SELECT c.*, ct.*
FROM Committee AS c
INNER JOIN CommitteeType as ct on c.CommitteeTypeID=ct.CommitteeTypeID
WHERE CommitteeID=$committee_id
Затем я бегу:
$statement = $db->prepare($query);
$statement->execute();
$result = $statement->fetchAll(PDO::FETCH_NAMED);
Результирующий массив во многом соответствует ожидаемому, за исключением того, что все значения из таблицы CommitteeType пусты. Когда я запускаю точно такой же запрос в Navicat к базе данных, я получаю значения для всего из второй таблицы.
Что-то глючит в этом драйвере?
Я пробовал много вариантов синтаксиса запроса без какой-либо разницы в выводе. Похоже, я никогда не смогу получить значения из внутренней объединенной таблицы, независимо от того, какие таблицы я запрашиваю.
Кто-нибудь видит что-то, что мне не хватает, или сталкивался с чем-то подобным?