Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ADO + MSSQL 2012 не отдаёт данные типа Time 
:(
    Опции темы
WolfMax
Дата 3.2.2015, 02:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 49
Регистрация: 17.10.2005

Репутация: нет
Всего: 1



Добрый день, имеется MSSQL SERVER 2012 на нём БД с таблицей, в которой есть поле тиа TIME(7) (оно стало доступно в 2008 сервере), есть datetime. При подключении через ADODB и Execute запроса SELECT * FROM table_name получаю Handle, делаю fetch первой записи поле типа datetime выводиться через echo , а поле типа time - нет. Какое может быть универсальное решение?  CAST и CONVERT не очень подходят.

Код



<?php

$conn = new COM("ADODB.Connection") or die("Cannot start ADO");
$conn->Open("Provider=SQLOLEDB; Data Source=localhost;
Initial Catalog=database; User ID=user; Password=password");

$rs = $conn->Execute("SELECT * FROM sometable");    // Recordset

$num_columns = $rs->Fields->Count();
echo $num_columns . "\n";

for ($i=0; $i < $num_columns; $i++) {
    $fld[$i] = $rs->Fields($i);
}

$rowcount = 0;
while (!$rs->EOF) {
    for ($i=0; $i < $num_columns; $i++) {
        echo $fld[$i]->value . "\t";           // ПЕРВЫЙ СТОЛБЕЦ ТИПА datetime выводиться, а второй типа TIME - нет! Почему?
    }
    echo "\n";
    $rowcount++;            // increments rowcount
    $rs->MoveNext();
}

$rs->Close();
$conn->Close();

$rs = null;
$conn = null;

?>



PM MAIL   Вверх
Akina
Дата 3.2.2015, 09:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 1
Всего: 453



Как я понимаю, тот же запрос, но выполненный через, например, Management Studio, данные показывает нормально.
Если так - то вопрос не к SQL-серверу, а к библиотеке либо драйверу доступа.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
WolfMax
Дата 3.2.2015, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 49
Регистрация: 17.10.2005

Репутация: нет
Всего: 1



Цитата(Akina @ 3.2.2015,  09:05)
Как я понимаю, тот же запрос, но выполненный через, например, Management Studio, данные показывает нормально.
Если так - то вопрос не к SQL-серверу, а к библиотеке либо драйверу доступа.

Да, если выполнить запрос в менеджере запросов напрямую, то всё показывается. Вот как заставить ADO отдвать данные типа Time - это вопрос!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.1056 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.