Frage

Mit PHP, ich habe eine einfache Datenbank, die mehrere Artikel mit dem gleichen Inhalt speichern. Ich möchte das erste Vorkommen einer Instanz löschen, wenn ich DELETE verwenden.

Wie kann man das LIMIT in SQLite DELETE PHP?

War es hilfreich?

Lösung

Sie können diese Optionen nicht aus PHP aktivieren, Sie müssen SQLite selbst kompilieren , um diese Optionen zu aktivieren. Wichtig ist, müssen Sie die Vollversion zum Download, nicht die Verschmelzung -Source-Version von SQLite Download-Seite .

Wenn Sie auf Unix sind, erhalten die sqlite-3.6.20.tar.gz Tarball und herunterladen. Dann gilt:

tar xzf sqlite-3.6.20.tar.gz
cd sqlite-3.6.20
export CFLAGS='-DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1'
./configure
make

Dann werden Sie das sqlite3 Befehlszeilenprogramm haben und die Bibliotheksdateien im .libs Unterverzeichnis.

Andere Tipps

Sie können die Grenze mit ausgewählten und Sie können wählen Sie kombinieren und löschen wie:

DELETE FROM Foo
WHERE someColumn in
(
  SELECT someColumn FROM FOO WHERE SomeCondition LIMIT 200
)
DELETE FROM table WHERE rowid = (SELECT rowid FROM table WHERE condition LIMIT 1 )

hier , so scheint es, dass Sie den SQLite-Quellcode kompilieren mit

#define SQLITE_ENABLE_UPDATE_DELETE_LIMIT

, um es zu aktivieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top