Автор Тема: возратить время из MsSQL  (Прочитано 2486 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
возратить время из MsSQL
« : 17 Июня 2003, 21:28:14 »
Может я плохо знаю SQL или РНР?

Открываю Enterprise Manager и делаю запрос к базе
SELECT time_stamp FROM ACCOUNTING1 WHERE (USERNAME = \'corne\') and (ACCTSTATUSTYPE=\'stop\') and (acctsessionid=\'0416348435\') ORDER BY TIME_STAMP

Он возвращает:
08.03.2003 19:51:00

Тот же самый запрос делаю в РНР
Выдает:
Mar 08 2003 07:51PM

Как вернуть значение такое же какое возвращает Enterprise Manager?

OS ASP VOSTOK 7.3,
PHP 4.3.1 ./configure\' \'--with-mssql=/usr/local\' \'--with-apxs=/usr/sbin/apxs\' \'--with-mysql\' \'--enable-track-vars\' \'--enable-sockets\' \'--enable-ftp\'

mssql
MSSQL Support enabled
Active Persistent Links  0  
Active Links  0  
Library version  7.0  

Directive                     Local Value            Master Value
mssql.allow_persistent     On                          On
mssql.batchsize               0                               0
mssql.compatability_mode Off                         Off
mssql.connect_timeout     5                             5
mssql.datetimeconvert      On                          On
mssql.max_links              Unlimited               Unlimited
mssql.max_persistent      Unlimited               Unlimited
mssql.max_procs                25                        25
mssql.min_error_severity     10                        10
mssql.min_message_severity 10                       10
mssql.secure_connection      Off                     Off
mssql.textlimit               Server default       Server default
mssql.textsize               Server default          Server default
mssql.timeout                    60                        60
« Последнее редактирование: 17 Июня 2003, 22:05:24 от Yukko »
работа в Украине

Оффлайн Wyclef

  • hello_worlder
  • Старожил
  • ****
  • Сообщений: 307
  • +0/-0
  • 2
    • Просмотр профиля
    • http://thug.narod.ru
возратить время из MsSQL
« Ответ #1 : 18 Июня 2003, 10:57:36 »
SELECT CONVERT(varchar(10), time_stamp, 104) AS time_stamp FROM ACCOUNTING1 ...
---
Выдаст 08.03.2003

Варианты:
http://www.schemamania.org/jkl/booksonline/SQLBOL70/html/ca-co_1.htm
It\'s nice to be important, but it\'s more important to be nice!

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
возратить время из MsSQL
« Ответ #2 : 18 Июня 2003, 15:15:29 »
Thanks,
Я уже это нашел в хелпе по MsSQL :).

Но РНР все равно делает по своему... и выводит так как было указано на запрос типа:
SELECT callingid,  CONVERT(datetime, TIME_STAMP, 108) AS time_stamp, acctstatustype, acctdelaytime, acctsessionid  FROM dbo.ACCOUNTING1 WHERE (USERNAME = \'$user\') and (ACCTSTATUSTYPE=\'start\') ORDER BY TIME_STAMP
« Последнее редактирование: 18 Июня 2003, 17:11:28 от Yukko »
работа в Украине

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
возратить время из MsSQL
« Ответ #3 : 19 Июня 2003, 18:27:27 »
Вот так правильно:
"SELECT callingid,  CONVERT(varchar(30), TIME_STAMP, 120) AS time_stamp, acctstatustype, acctdelaytime, acctsessionid  FROM dbo.ACCOUNTING1 WHERE (USERNAME = \'$user\') and (ACCTSTATUSTYPE=\'start\') ORDER BY TIME_STAMP";

Выводит:
2003-04-12 16:51:00

А дальше скармливаем это все функции
strtotime() и получаем unixtimestamp
« Последнее редактирование: 19 Июня 2003, 18:35:22 от Yukko »
работа в Украине

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28