Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

सिम्फनी + सिद्धांत ओरेकल डेटटाइम प्रारूप मुद्दा

DateTimeType . का विस्तार करते हुए एक कस्टम DBAL प्रकार बनाएं और convertToPHPValue को ओवरराइड करें फ़ंक्शन (मैंने VarDateTimeType . कॉपी किया है क्लास, जो मेरे Oracle इंस्टॉलेशन द्वारा उपयोग किए जा रहे दिनांक प्रकार को सफलतापूर्वक परिवर्तित नहीं कर सका):

<?php

namespace YourCompany\SomeBundle\Doctrine\DBAL\Types;

use Doctrine\DBAL\Platforms\AbstractPlatform;
use Doctrine\DBAL\Types\ConversionException;
use Doctrine\DBAL\Types\DateTimeType;

class SillyDateTimeType extends DateTimeType
{
    /**
     * {@inheritdoc}
     * @throws \Doctrine\DBAL\Types\ConversionException
     */
    public function convertToPHPValue($value, AbstractPlatform $platform)
    {
        if ($value === null || $value instanceof \DateTime) {
            return $value;
        }

        $val = \DateTime::createFromFormat('d-M-y H.i.s.u A', $value);
        if ( ! $val instanceof \DateTime) {
            throw ConversionException::conversionFailed($value, $this->getName());
        }

        return $val;
    }
}

बदलें $val = \DateTime::createFromFormat('d-M-y H.i.s.u A', $value); उन स्तंभों के लिए आपका इंस्टॉलेशन किसी भी प्रारूप में वापस आ रहा है।

फिर बस इसे dbal . के तहत रजिस्टर करें config.yml . में :

# app/config/config.yml
doctrine:
    dbal:
        types:
          sillydatetime: YourCompany\SomeBundle\Doctrine\DBAL\Types\SillyDateTimeType

अब आप sillydatetime . का उपयोग कर सकते हैं (या जो भी आप इसे कहते हैं) आपके कॉलम प्रकार विनिर्देशों में कहीं भी।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. विशिष्ट परिणाम के लिए तीन तालिकाओं में शामिल हों

  2. जावा से पीएल/एसक्यूएल में सरणी कैसे वापस करें?

  3. Oracle XMLTYPE एक्सट्रेक्ट रूट प्रोलॉग वैल्यू

  4. Oracle में BFILE कॉलम से BLOB प्राप्त करें

  5. ओरेकल:प्रक्रियाओं में तत्काल तत्काल बयानों के लिए प्रक्रिया स्थानीय चर का उपयोग कैसे करें