Heim > Datenbank > MySQL-Tutorial > Wie kann ich MySQL-Spaltennamen mithilfe einer gespeicherten Prozedur dynamisch durchlaufen?

Wie kann ich MySQL-Spaltennamen mithilfe einer gespeicherten Prozedur dynamisch durchlaufen?

DDD
Freigeben: 2024-12-30 12:35:13
Original
999 Leute haben es durchsucht

How Can I Dynamically Iterate Through MySQL Column Names Using a Stored Procedure?

Dynamisches Durchlaufen von Spaltennamen in einer MySQL-Tabelle

Diese Frage untersucht eine Methode zum Durchlaufen von Spaltennamen in einer MySQL-Tabelle mithilfe einer gespeicherten Prozedur geschrieben in nativem SQL. Das Ziel besteht darin, eine Liste von Spaltennamen zu erhalten und dann eine gespeicherte Prozedur basierend auf jedem Spaltennamen als Variable auszuführen.

Spaltennamen abrufen

So rufen Sie Spaltennamen ab aus einer MySQL-Tabelle verwenden Sie die Funktion SHOW COLUMNS FROM Befehl. Dieser Befehl gibt einen Ergebnissatz zurück, der Informationen zu den Spalten der Tabelle enthält, einschließlich ihrer Namen.

Durchlaufen von Spaltennamen

Sobald die Spaltennamen abgerufen wurden, können sie gespeichert werden in einer Schleife mit einem Cursor. Ein Cursor ist ein Iterator, der das zeilenweise Durchlaufen einer Ergebnismenge ermöglicht. Hier ist ein Beispiel:

DECLARE col_names CURSOR FOR
  SELECT column_name
  FROM INFORMATION_SCHEMA.COLUMNS
  WHERE table_name = 'tbl_name'
  ORDER BY ordinal_position;
Nach dem Login kopieren

Dieser Cursor wählt die Spaltennamen aus der angegebenen Tabelle aus, ordnet sie nach ihrer Position und benennt den Cursor mit Spaltennamen.

Ausführen einer Schleife

Um die Spaltennamen zu durchlaufen und eine gespeicherte Prozedur auszuführen, verwenden Sie Folgendes Schleife:

SET i = 1;
the_loop: LOOP

  IF i > num_rows THEN
    CLOSE col_names;
    LEAVE the_loop;
  END IF;

  FETCH col_names 
  INTO col_name;     

   //do whatever else you need to do with the col name

  SET i = i + 1;  
END LOOP the_loop;
Nach dem Login kopieren

Diese Schleife verwendet eine FETCH-Anweisung, um den nächsten Spaltennamen in eine Variable col_name abzurufen. Innerhalb der Schleife können alle notwendigen Aktionen basierend auf dem Spaltennamen ausgeführt werden.

Das obige ist der detaillierte Inhalt vonWie kann ich MySQL-Spaltennamen mithilfe einer gespeicherten Prozedur dynamisch durchlaufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage