Heim > Datenbank > MySQL-Tutorial > Wie kann ich MySQL-Felder mithilfe von Variablen dynamisch auswählen und aktualisieren?

Wie kann ich MySQL-Felder mithilfe von Variablen dynamisch auswählen und aktualisieren?

Linda Hamilton
Freigeben: 2024-11-23 11:02:34
Original
181 Leute haben es durchsucht

How Can I Dynamically Select and Update MySQL Fields Using Variables?

Dynamische Feldauswahl in MySQL basierend auf einer Variablen

In der Datenbankprogrammierung ist es häufig erforderlich, Felder basierend auf Variablenwerten dynamisch auszuwählen. Dies kann besonders in Szenarien nützlich sein, in denen Feldnamen unbekannt sind oder sich dynamisch ändern.

Feldauswahl mithilfe einer Zeichenfolgenvariablen

Frage: Ist es so? Es ist möglich, ein Feld auszuwählen, dessen Name in einer String-Variablen gespeichert ist MySQL?

SELECT 'fieldname' FROM table;
Nach dem Login kopieren

Antwort: Ja, es ist möglich, die MySQL-Anweisung dynamisch mithilfe der Zeichenfolgenvariablen zu erstellen:

SET @fieldname = 'name';
SELECT @fieldname FROM table;
Nach dem Login kopieren

Dynamic Updates Using Feldvariablen

Frage: Wie kann ich Aktualisierungen an einem durchführen? Tabelle mit einer Variablen, die den Feldnamen in MySQL darstellt?

SET fieldname = NEW.`name`;
UPDATE table SET fieldname = 1;
Nach dem Login kopieren

Antwort: Es ist nicht möglich, eine beliebige Zeichenfolge direkt als Feldnamen in MySQL zu verwenden. Sie können jedoch eine Problemumgehung mithilfe der Funktion „PREPARED STATEMENTS“ von MySQL anwenden:

SELECT columnname FROM queries INTO @colname;
SET @table = 'mytable';
SET @s = CONCAT('SELECT ', @colname, ' FROM ', @table);

PREPARE stmt FROM @s;
EXECUTE stmt;
Nach dem Login kopieren

Damit können Sie eine vorbereitete Anweisung mit einem dynamischen Feldnamen erstellen, der auf dem in der Variablen @colname gespeicherten Wert basiert.

Das obige ist der detaillierte Inhalt vonWie kann ich MySQL-Felder mithilfe von Variablen dynamisch auswählen und aktualisieren?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage