mysql séparateur d'erreur

Modifiable.

DROP FUNCTION IF EXISTS PersonName;
DELIMITER |;

CREATE FUNCTION PersonName( personID SMALLINT )
RETURNS CHAR(20)
BEGIN
  DECLARE pname CHAR(20) DEFAULT '';
  SELECT name INTO pname FROM family WHERE ID=personID;
  RETURN pname;
END;
|
DELIMITER ;

quoi de mal avec ce code? je reçois d'erreur suivant avec elle.

Il semble y avoir une erreur dans votre requête SQL. Le serveur MySQL erreur
la sortie ci-dessous, si il y a de tout, peut
également vous aider dans le diagnostic de la
problème

ERROR: Unknown Ponctuation Chaîne @
102 STR: |; SQL: ABANDON DE LA FONCTION SI
EXISTE PersonName;# MySQL a retourné un
jeu de résultats vide (c'est à dire des lignes nulles).

SÉPARATEUR |; SÉPARATEUR |; SÉPARATEUR |;
SÉPARATEUR |; SÉPARATEUR |; SÉPARATEUR |;
SÉPARATEUR |;

Requête SQL:

SÉPARATEUR |;

MySQL a dit: Documentation
#1064 - Vous avez une erreur dans votre syntaxe SQL; consultez le manuel
correspond à votre serveur MySQL
version pour la bonne syntaxe à utiliser
près de " SÉPARATEUR |' à la ligne 1

basit, un conseil: vous devez vous escape dièse ( # ) symbole comme \#1064, sinon le texte que vous publiez est formaté comme un en-Tête.

OriginalL'auteur Basit | 2009-08-12