Navicat kann keine Funktionslösungsfreigabe erstellen

Navicat kann keine Funktionslösungsfreigabe erstellen

Als ich zum ersten Mal eine MySQL-FUNKTION schrieb, traten ständig Fehler auf.

Err] 1064 - Ihre SQL-Syntax weist einen Fehler auf. Lesen Sie im Handbuch zu Ihrer MySQL-Serverversion nach, welche Syntax in der Nähe von „company_id“ zu verwenden ist (int) RETURNS varchar(20) CHARSET utf8

BEGINNEN

Die ursprüngliche Funktion:

CREATE DEFINER=`33323`@`%` FUNCTION `createSaleCode`(`benginStr` varchar,`company_id` int) RETURNS varchar(20) CHARSET utf8 
BEGINNEN 
  DECLARE nearnum VARCHAR(20);  
 DECLARE nowdatepre VARCHAR(20); 
 DECLARE numout VARCHAR(20);  
 Wählen Sie a.sale_code INTO nearnum aus d_sale a, wobei a.company_id = company_id ist. Bestellen Sie nach a.sale_id DESC-Limit 1; 
 SELECT concat(extract(year_month from now()), LPAD(extract(day from now()), 2, 0)) INTO nowdatepre; 
 WENN lokalisieren(nowdatepre,nearnum)>0  
  DANN  
    setze Numout = Nearnum +1;   
  ANDERS  
    setze Numout = concat(beginStr,nowdatepre,'00001');  
  ENDE, WENN; 
 RETURN-Nummer; 
ENDE

Diese Funktion kann auf Navicat nicht ausgeführt werden. Nach mehreren Versuchen wird der Code wie folgt geändert:

Trennzeichen $$ 
CREATE DEFINER=`12212`@`%` FUNCTION createSaleCode(benginStr varchar(20),company_id int(11) ) RETURNS varchar(20) CHARSET utf8 
BEGINNEN 
  DECLARE nearnum VARCHAR(20);  
 DECLARE nowdatepre VARCHAR(20); 
 DECLARE numout VARCHAR(20);  
 Wählen Sie a.sale_code INTO nearnum aus d_sale a, wobei a.company_id = company_id ist. Bestellen Sie nach a.sale_id DESC-Limit 1; 
 SELECT concat(extract(year_month from now()), LPAD(extract(day from now()), 2, 0)) INTO nowdatepre; 
 WENN lokalisieren(nowdatepre,nearnum)>0  
  DANN  
    setze Numout = Nearnum +1;   
  ANDERS  
    setze Numout = concat(beginStr,nowdatepre,'00001');  
  ENDE, WENN; 
 RETURN-Nummer; 
ENDE$$ 
Trennzeichen ;

Problem gelöst.

Standardmäßig ist das Trennzeichen ein Semikolon;.

Zusammenfassen

Das Obige ist der gesamte Inhalt dieses Artikels zur Lösung des Problems, dass Navicat keine Funktionen erstellen kann. Ich hoffe, es wird für alle hilfreich sein. Interessierte Freunde können weiterhin auf diese Site verweisen: eine kurze Einführung in den Unterschied zwischen Redis und MySQL, eine Analyse von MySQL-Unterabfragen und Beispielen zur Optimierung verschachtelter Abfragen, mehrere wichtige MySQL-Variablen usw. Wenn Sie Fragen haben, können Sie jederzeit eine Nachricht hinterlassen und der Herausgeber wird Ihnen rechtzeitig antworten. Vielen Dank, Freunde, für die Unterstützung dieser Site!

Das könnte Sie auch interessieren:
  • Einfache Beispiele zum Erstellen gespeicherter Prozeduren, Trigger und zur Verwendung von Cursorn in Navicat (Bilder und Text)
  • Navicat 8 erstellt eine Datenbank und erstellt einen Benutzer, um Berechtigungen grafische Methode zuzuweisen
  • Verwenden Sie Navicat 8, um eine Datenbank zu erstellen und Daten zu importieren, um Benutzer und Berechtigungen zu verwalten [Grafische Methode]

<<:  Detaillierte Erklärung zur grundlegenden Verwendung des React Native-Scaffoldings

>>:  So bereinigen Sie den MySQL-Speicherplatz in der Alibaba Cloud

Artikel empfehlen

So lösen Sie das Problem „Nginx 503-Dienst vorübergehend nicht verfügbar“

In letzter Zeit tritt nach dem Aktualisieren der ...

W3C Tutorial (2): W3C Programme

Der W3C-Standardisierungsprozess ist in 7 verschi...

Zusammenfassung der praktischen Erfahrungen zu HTML-Wissenspunkten

1. Das Tabellen-Tag ist Tabelle, tr ist Zeile, td ...

Detaillierte Hinweise zu React für Einsteiger

Inhaltsverzeichnis 1. Grundlegendes Verständnis v...

Detaillierter Prozess der Bereitstellung von Docker für WSL2 in IDEA

Die lokale Umgebung ist Windows 10 + WSL2 (Ubuntu...

Webdesign: Skriptmaterialien rekonstruieren das Benutzererlebnis

<br />Originaltext: http://blog.rexsong.com/...

Empfehlen Sie mehrere MySQL-bezogene Tools

Vorwort: Mit der kontinuierlichen Entwicklung der...

Verwenden Sie CSS, um die Breite von INPUT in TD festzulegen

Als ich kürzlich mit C# ein Webprogramm erstellte,...

So konfigurieren Sie SSL für den Koa2-Dienst

I. Einleitung 1: SSL-Zertifikat Mein Domänenname ...

So zeigen Sie die Zeitzone in MySQL an und ändern sie

Heute habe ich festgestellt, dass ein Programm ei...

Vor- und Nachteile von Vite und Vue CLI

Es gibt im Vue-Ökosystem ein neues Build-Tool nam...