Maison > base de données > tutoriel mysql > Une brève introduction aux fonctions personnalisées MySQL

Une brève introduction aux fonctions personnalisées MySQL

怪我咯
Libérer: 2017-04-01 10:44:48
original
1198 Les gens l'ont consulté

En raison de besoins professionnels, je dois écrire un nombre personnalisé de lignes pour mysql, comme suit
DELIMITER $$
DROP FUNCTION IF EXISTS `onlineFunction` $$
CREATE FUNCTION `onlineFunction`(rrrr VARCHAR(50)) RETOURNE VARCHAR(255)
BEGIN
IF(rrr='online') THEN RETURN 'online';END IF;
END $$
DELIMITER ;
La première ligne DELIMITER définit un identifiant de fin, car MySQL utilise par défaut un point-virgule comme fin de l'instruction SQL, et la fonction utilise un point-virgule à l'intérieur du corps, il sera donc suivi par Les conflits de terminateur SQL par défaut, vous devez donc d'abord définir un autre symbole comme terminateur SQL. Si cette définition n'est pas ajoutée...
Code d'erreur : 1064
Vous avez une erreur dans votre syntaxe SQL ; consultez le manuel qui correspond à la version de votre serveur MySQL pour connaître la bonne syntaxe à utiliser près de la "fin" de la ligne. 1

La deuxième ligne est Supprimez la classe du même nom, sinon...
Code d'erreur : 1304
FUNCTION onlineLa fonction existe déjà

Le troisième ligne Un nom de fonction, une fonction variable et un type de retour

La quatrième ligne début est le début, qui correspond à fin$$

La cinquième ligne est le if déclaration de jugement , le format est
if(...) alors
....;
elseif
....;
else
. ...;
end if;
return ..;
Parfois, mysql ne peut pas créer une fonction personnalisée car la fonction 2 n'est pas activée

Entrez des variables d'affichage comme '%func% '; La commande

verra l'état de log_bin_trust_function_creators. S'il est désactivé, cela signifie que la fonction personnalisée est fermée

Entrez la commande set global log_bin_trust_function_creators=1;

pour définir log_bin_trust_function_creators Activez la fonction de fonction personnalisée

Mais ce paramètre est une solution temporaire, car l'état passera à OFF après le redémarrage automatique de MySQL, vous devez donc ajouter "--" dans

au démarrage du service. paramètre log-bin-trust-function-creators=1 ”.

Ou ajoutez log-bin-trust-function-creators=1 à la section [mysqld] dans my.ini (my.cnf).


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal