Heim >Datenbank >MySQL-Tutorial >Wie kann ich in MySQL zuverlässig nach einer Spalte suchen und diese erstellen?

Wie kann ich in MySQL zuverlässig nach einer Spalte suchen und diese erstellen?

Barbara Streisand
Barbara StreisandOriginal
2024-12-14 10:36:11785Durchsuche

How Can I Reliably Check for and Create a Column in MySQL?

Überprüfen der Spaltenexistenz in MySQL-Tabellen

Die Bestimmung der Präsenz einer bestimmten Spalte in einer MySQL-Tabelle ist eine grundlegende Aufgabe in der Datenbankprogrammierung. Im Vergleich zu anderen relationalen Datenbanksystemen kann der Ansatz von MySQL bei dieser Abfrage jedoch verwirrend sein.

Betrachten Sie den folgenden Abfrageversuch, der sowohl nach einer Spalte sucht als auch diese erstellt, wenn sie fehlt:

IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS
           WHERE TABLE_NAME='prefix_topic' AND column_name='topic_last_update')
BEGIN
ALTER TABLE `prefix_topic` ADD `topic_last_update` DATETIME NOT NULL;
UPDATE `prefix_topic` SET `topic_last_update` = `topic_date_add`;
END;

Leider schlägt dieser Code fehl, weil MySQL bedingte Anweisungen mit Datenmanipulationsvorgängen verarbeitet.

Zuverlässig Lösung

Um zuverlässig nach einer Spalte in MySQL zu suchen und diese zu erstellen, versuchen Sie diesen alternativen Ansatz:

SHOW COLUMNS FROM `table` LIKE 'fieldname';

Diese Abfrage ruft eine Zeile nur ab, wenn der angegebene Feldname in der Tabelle vorhanden ist . Anschließend können Sie die Ergebnisse verwenden, um Entscheidungen in Ihrem Code zu treffen.

Zum Beispiel in PHP:

$result = mysql_query("SHOW COLUMNS FROM `table` LIKE 'fieldname'");
$exists = (mysql_num_rows($result))?TRUE:FALSE;

Schlussfolgerung

Prüfung auf und Das Bearbeiten von Spalten in MySQL erfordert einen anderen Ansatz als in vielen anderen Datenbanksystemen. Durch die Verwendung der SHOW COLUMNS-Abfrage können Sie eine zuverlässige Spaltenvalidierung und -manipulation in Ihren MySQL-Anwendungen sicherstellen.

Das obige ist der detaillierte Inhalt vonWie kann ich in MySQL zuverlässig nach einer Spalte suchen und diese erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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