एमएसएसएलएल 2005 डेटाबेस के लिए पीडीओ डेटाटाइम प्रारूप "जर्मन_Phonebook_BIN" (लेकिन यह महत्वपूर्ण नहीं है) है। डीबी से कनेक्शन पीडीओ और फ्रीटीडीएस (डेबियन निचोड़ के तहत PHP का उपयोग करके) के माध्यम से किया जाता है। जब मैं एक मेज से दिनांक मान का चयन करने की कोशिश मैं की तरह परिणाम:एमएसएसएलएल/डीबीआईबी
अप्रैल 1 2008 12: 00: 00: 000
लेकिन मैं
2008-01-01 00:00 प्राप्त करने की उम्मीद : 00
(माना जाता है कि समय 00:00:00 12:00:00 में बदल दिया गया है, पता नहीं क्यों 00: 00 = 12: 00 ???) मेरे लिए कोई रास्ता नहीं है SELECT
कथन (CONVERT
के साथ रूपांतरण करने के लिए) में हेरफेर करें। मुझे डेट प्रारूप सेट करने के लिए पीडीओ में कोई विकल्प नहीं मिला। क्वेरी रन से पहले SET DATEFORMAT
और SET LANGUAGE
इससे प्रभावित नहीं होता है। कोई भी ऐसे संकेत दे सकता है जहां पीडीओ में यह किया जा सकता है (और केवल किया जा सकता है)? (। Btw नाशपाती :: MBD2 datetime कॉलम की उम्मीद प्रारूप में दिखाए, लेकिन MDB2 भयानक है जब यह UTF-8 और MSSQL के साथ काम करना पड़ता है), कुछ और जानकारी (केवल महत्वपूर्ण के टुकड़े से पता चलता)
ठीक:
<?php
$this->_dsn = 'dblib:host=' . $this->_db['host'] . ';dbname=' . $this->_db['database'] . ';charset=UTF-8';
$this->_handle = new PDO($this->_dsn, $this->_db['user'], $this->_db['password']);
print_r($this->_handle->query("SELECT [date_column] FROM [some_table]"));
यह व्यवहार सामान्य नहीं है। क्या आप दिखा सकते हैं कि आप उन मानों का चयन कैसे करते हैं और आप उन्हें PHP में कैसे आउटपुट करते हैं? –
https://bugs.php.net/bug.php?id=54648 – rabudde
ugh पर एक नज़र डालें, मैं देखता हूं। --- –