sql >> Database teknologi >  >> RDS >> Mysql

får syntaksfejl ved oprettelse af funktion

  • Du skal omdefinere Delimiter til noget andet (f.eks.:$$ ), i stedet for (; ).
  • Også som en sikkerhedsforanstaltning skal du kontrollere, om den samme navnefunktion allerede findes eller ej (DROP FUNCTION IF EXISTS )
  • Til sidst skal du omdefinere DELIMITER til ;

Prøv :

DELIMITER $$
DROP FUNCTION IF EXISTS `TitleToFileName`$$
CREATE FUNCTION TitleToFileName(title varchar(200)) RETURNS varchar(200)
  BEGIN
    set title = REPLACE(title,":"," ");
    set title=REPLACE(title,"/"," ");
    set title=REPLACE(title,"_"," ");
    RETURN title;
  END $$
DELIMITER ;



  1. Er normalt MySql-indeks påkrævet, når vi har Composite-indeks

  2. Hvorfor postgres ikke bruger indekset i min forespørgsel

  3. SQL Join på null-værdier

  4. Postgres Alter Column Heltal til Boolean