Erreur avec Symfony requête : Attendu Littérale, obtenu '"'
J'ai la requête suivante:
$query = $em->createQueryBuilder()
->select('u.id, u.username, u.username_canonical, u.email, u.email_canonical, u.last_login, u.name, u.type, u.phone, u.site, u.agency, u.subtype, u.info, u.created_date, u.vip')
->from('ContrateAdminBundle:Fosuser', 'u')
->where('u.created_date BETWEEN "'.$fromdateaccounts.'" AND "'.$todateaccounts.'" ')
->getQuery();
$results = $query->getResult();
dans Symfony pour récupérer les données de l'utilisateur, mais j'ai eu l'erreur suivante:
[Syntax Error] line 0, col 223: Error: Expected Literal, got '"'
500 Internal Server Error - QueryException
1 linked Exception: QueryException »
Mon résultat de la requête est:
SELECT u.id, u.username, u.username_canonical, u.email, u.email_canonical, u.last_login, u.name, u.type, u.phone, u.site, u.agency, u.subtype, u.info, u.created_date, u.vip
FROM ContrateAdminBundle:Fosuser u
WHERE u.created_date BETWEEN "2014-08-04 13:29" AND "2014-10-30 13:29"
Avez-vous essayez avec une simple citation au lieu des guillemets?
OriginalL'auteur Prabhash | 2015-02-09
Vous devez vous connecter pour publier un commentaire.
Les littéraux de chaîne dans SQL sont signalées par des guillemets simples
'
, pas de guillemets doubles"
, de sorte que vous avez à remplacer le"
comme délimiteurs de chaînes dans votre requête par'
:OriginalL'auteur Mureinik
Vous pouvez également utiliser Expr :
OriginalL'auteur Bang
Veuillez utiliser les paramètres. Accepté réponse pourrait générer des injections SQL.
OriginalL'auteur Manic Depression