Beste mensen,
Ik heb de onderstaande code uitgevoerd om een MSSQL datumformaat als 0x00009BA100000000 te converteren naar een MYSQL formaat zoals 00-00-0000 00:00:00. Maar als ik deze code uitvoer, wordt er geen datum ge-output.
Hoe kan dit?

<?php
mysql_connect ("********","*******", "********");
mysql_select_db ("*****");
$string = "0x00009BA100000000";
$query = mysql_query("SELECT
CAST(
'1900-01-01 00:00:00' +
INTERVAL CAST(CONV(substr(HEX(BinaryData),1,8), 16, 10) AS SIGNED) DAY +
INTERVAL CAST(CONV(substr(HEX(BinaryData),9,8), 16, 10) AS SIGNED)* 10000/3 MICROSECOND
AS DATETIME) AS converted_datetime
FROM
(
SELECT '".$string."' AS BinaryData
) d");
while ($obj = mysql_fetch_object($query)) {
echo $obj->converted_datetime;
}
?>
Nick Nurmodeluxe op 14/08/2012 17:26:29

Het klopt niet wat je zegt, want het is gelukt.

Haha, het klopt wel wat ik zeg :-) En jouw nieuwste code klopt ook. Kan jij zelf ook zien wat je hebt veranderd waardoor het nu wel werkt en eerst niet? En wat ik dus ook verkeerd deed waardoor ik die gigantische waarde kreeg....

Nick,

Haal even je inloggegevens voor de db weg uit je code.
Begrijp ik het goed dat je gegevens in mysql hebt geimporteerd uit een SQL Server export?

Reageren