Mysql aktualisiert die Datenbank dynamisch - Skriptbeispiel - Erklärung

Mysql aktualisiert die Datenbank dynamisch - Skriptbeispiel - Erklärung

Das spezifische upgrade -Skript lautet wie folgt:

Indizes dynamisch löschen

DROP-VERFAHREN, WENN EIN UPGRADE VORHANDEN IST;
TRENNUNGSZEICHEN $$
PROZEDUR-UPGRADE ERSTELLEN()
BEGINNEN
-- RESOURCE.AUDIO_ATTRIBUTE
 WENN VORHANDEN (AUSWÄHLEN * AUS INFORMATION_SCHEMA.STATISTICS, WO TABLE_SCHEMA = ‚RESSOURCE‘ UND TABLE_NAME = ‚AUDIO_ATTRIBUTE‘ UND INDEX_NAME = ‚Ressource_Publish_Ressource_ID_Index‘)
  DANN 
    ALTER TABLE `AUDIO_ATTRIBUTE` DROP INDEX resource_publish_resource_id_index;
 ENDE, WENN;
ENDE$$
TRENNUNGSZEICHEN ;
Rufen Sie Upgrade() auf;
DROP-VERFAHREN, WENN EIN UPGRADE VORHANDEN IST;

Dynamisches Hinzufügen von Feldern

DROP-VERFAHREN, WENN EIN UPGRADE VORHANDEN IST;
TRENNUNGSZEICHEN $$
PROZEDUR-UPGRADE ERSTELLEN()
BEGINNEN
-- HAUSAUFGABE.HAUSAUFGABE_QUESTION_GROUP.FROM_ID
 WENN NICHT EXISTIERT (SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'HOMEWORK' AND TABLE_NAME = 'HOMEWORK_QUESTION_GROUP' AND COLUMN_NAME = 'FROM_ID')
  DANN 
    ALTER TABLE `HOMEWORK_QUESTION_GROUP` ADD COLUMN FROM_ID VARCHAR(50) NULL;
 ENDE, WENN;
-- HAUSAUFGABEN.HAUSAUFGABEN_FRAGENGRUPPE.FRAGETYP
 WENN NICHT EXISTIERT (SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'HOMEWORK' AND TABLE_NAME = 'HOMEWORK_QUESTION_GROUP' AND COLUMN_NAME = 'QUESTION_TYPE')
  DANN 
    ALTER TABLE `HOMEWORK_QUESTION_GROUP` ADD COLUMN QUESTION_TYPE VARCHAR(50) NULL;
 ENDE, WENN;
--HOMEWORK.HOMEWORK_QUESTION_GROUP.DIFFICULTY
 WENN NICHT EXISTIERT (SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'HAUSAUFGABEN' AND TABLE_NAME = 'HAUSAUFGABEN_FRAGENGRUPPE' AND COLUMN_NAME = 'SCHWIERIGKEIT')
  DANN 
    ALTER TABLE `HOMEWORK_QUESTION_GROUP` ADD COLUMN DIFFICULTY VARCHAR(50) NULL;
 ENDE, WENN;
ENDE$$
TRENNUNGSZEICHEN ;
Rufen Sie Upgrade() auf;
DROP-VERFAHREN, WENN EIN UPGRADE VORHANDEN IST;

Die anderen Syntaxen sind ähnlich, unterscheiden sich hauptsächlich zwischen der Verwendung von EXISTS und NOT EXISTS .

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • Implementierungscode für den Zugriff auf mehrere Datenbanken durch die Spring Boot-Konfiguration dynamischer Datenquellen
  • Detaillierte Erläuterung zum Erstellen geplanter Aufgaben mit SpringBoot (dynamische Ausführung mit Datenbank)
  • Beispiel einer in asp.net implementierten MVC-Funktion für datenbankübergreifende und gemeinsame dynamische Bedingungsabfragen mit mehreren Tabellen
  • Tutorial zur dynamischen SQL-Abfrage einer Datenbank im MyBatis-Framework von Java
  • Yii-Operationsdatenbank zur Realisierung der Methode zum dynamischen Abrufen von Tabellennamen
  • So erstellen Sie dynamisch eine Access-Datenbank und -Tabelle in C#
  • ext Combobox lädt Datenbankdaten dynamisch (mit Front- und Backend)
  • Beispiel für dynamisches Laden einer Ajax-Datenbank
  • C# ASP .NET-Methode zum dynamischen Erstellen einer SQL-Datenbanktabelle
  • JavaScript fügt Tabellendatenzeilen dynamisch hinzu (Beispiel für ASP-Hintergrunddatenbankspeicher)

<<:  So installieren Sie Nginx unter Win10

>>:  Drei Beispiele für Node.js-Methoden zum Abrufen von Formulardaten

Artikel empfehlen

Fassen Sie einige häufige Rankingprobleme in MySQL zusammen

Vorwort: In manchen Anwendungsszenarien stoßen wi...

Implementierung eines Web-Rechners auf Basis von JavaScript

In diesem Artikel wird der spezifische JavaScript...

Probleme und Lösungen bei der Installation von Docker in der Alibaba Cloud

Frage Bei der Installation von Docker mithilfe de...

Detaillierte Erklärung der MySQL information_schema-Datenbank

1. Übersicht Die Datenbank information_schema ist...

Tutorial zur Installation von MYSQL8.X auf Centos

MySQL-Installation (4, 5, 6 können weggelassen we...

Tutorial zur Installation und Verwendung von Docker MQTT

Einführung in MQTT MQTT (Message Queuing Telemetr...

jQuery implementiert Formularvalidierungsfunktion

Beispiel für die Validierung eines jQuery-Formula...

Lösung für falsche Zeichenfolgenwerte in MySQL

Viele Freunde berichten von folgendem Fehler, wen...