Mysql
 sql >> Base de données >  >> RDS >> Mysql

Ordre aléatoire avec Entity Framework et MySQL

Appelez-moi paresseux, mais le problème semble être que MySql n'a pas de fonction appelée NewGuid. La solution la plus simple ne serait-elle donc pas de créer une fonction dans MySql appelée NewGuid ?

DELIMITER $$
CREATE DEFINER=`root`@`localhost` FUNCTION `NewGuid`() RETURNS char(36)
BEGIN
RETURN UUID();
END$$
DELIMITER ;

Le problème est résolu pour moi après la création d'une fonction MySQL NewGuid.

Modifier :les questions indiquent que "la solution ne doit pas utiliser de requêtes sql brutes" et cela ne nécessite pas d'instruction SELECT/INSERT brute. Cependant, la fonction de base de données doit être créée.

Remarque supplémentaire :je dirais qu'il s'agit techniquement d'un bogue dans l'implémentation de MySQL. Fonctions canoniques sont dits "supportés par tous les fournisseurs de données" par Microsoft. NewGuid est répertorié sous Autres fonctions canoniques