8721 sujets

Développement web côté serveur, CMS

Hello, j'essaye d'insérer une date via mon modèle symfony mais j'ai l'erreur suivante :

$date           = new \DateTime();
$obj->setDtcreate(DateTime::createFromFormat('Y-m-d', date('Y-m-d')));

du coup j'ai l'erreur suivante
SQLSTATE[HY000]: General error: 241 Conversion failed when converting date and/or time from character string. [241] (severity 16) [(null)]


j'ai également essayé
$obj->setDtcreate(date('Y-m-d H:i:s'));

mais vu que sqlserver attends un objet datetime et pas un string, cela ne marche pas.
j'ai également essayé
La suite :

Je suis aller voir la méthode convertToDatabaseValue() qui prend mon objet et la convertie via le format de ma plateforme (AbstractPlatform), le format étant : Y-m-d H:i:s.u et je me suis rendu compte que c'est le .u (microseconde) qui ne passe pas.

Quand j'insert into à la main, je dois obligatoirement enlever les microsecondes. Mais en passant par doctrine, celui ajoute automatiquement ces putains de microsecondes (en plus les microseconde sont toujours à 000000.... bordel de cohérence!). Donc j'ai réécris la fonction dans le vendor/dbal/... tant pis.. même si je sais qu'on doit pas toucher à cœur, la ça ma soûler.
Meilleure solution