SQLite-Tabelle ändern: Spalte löschen
Wenn Sie mit einer SQLite-Datenbank arbeiten, müssen Sie möglicherweise Spalten aus einer Tabelle löschen. Obwohl es intuitiv ist, die Abfrage „ALTER TABLE Tabellenname DROP COLUMN Spaltenname“ zu verwenden, können beim Benutzer Fehler auftreten.
Ursachen und Lösungen
Bis vor kurzem unterstützte SQLite das Löschen von Spalten nicht direkt. Allerdings bieten die neuesten Versionen (3.35.0 und höher) diese Funktionalität jetzt.
Vor diesem Update erforderte die Änderung der Tabellenstruktur einen komplexeren Ansatz:
Die folgenden Schritte beschreiben den Prozess der Verwendung der SQL-Syntax:
<code class="language-sql">BEGIN TRANSACTION; CREATE TEMPORARY TABLE t1_backup(a,b); INSERT INTO t1_backup SELECT a,b FROM t1; DROP TABLE t1; CREATE TABLE t1(a,b); INSERT INTO t1 SELECT a,b FROM t1_backup; DROP TABLE t1_backup; COMMIT;</code>
Aktualisierte Lösung mit DROP COLUMN-Unterstützung
Mit der neuesten SQLite-Version wurde dieser Prozess erheblich vereinfacht. Spalten können nun direkt über die folgende Abfrage gelöscht werden:
<code class="language-sql">ALTER TABLE 表名 DROP COLUMN 列名</code>
Dieser Befehl löscht die angegebene Spalte dauerhaft aus der Tabelle. Beachten Sie, dass im Ergebnis alle zuvor in der Spalte gespeicherten Daten verloren gehen.
Das obige ist der detaillierte Inhalt vonWie lösche ich eine Spalte in einer SQLite-Tabelle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!