English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

SQLite Syntax

Nach SQLite ist eine Gruppe einzigartiger Regeln und Richtlinien, die als Syntax bezeichnet werden. Dieses Kapitel listet alle grundlegenden SQLite-Syntax auf.

Groß- und Kleinschreibung

Ein zu beachtendes Punkt ist, dass SQLite Groß- und Kleinschreibung nicht unterscheidet, d.h. die Klauseln GLOB und glob haben im SQLite-Ausdruck denselben Bedeutung.

Kommentare

SQLite-Kommentare sind zusätzliche Kommentare, die in SQLite-Code hinzugefügt werden können, um die Lesbarkeit zu verbessern und können überall auftreten; es können Leerzeichen auftreten, einschließlich innerhalb von Ausdrücken und zwischen anderen SQL-Anweisungen, aber sie dürfen nicht verschachtelt werden.

SQL-Kommentare beginnen mit zwei aufeinanderfolgenden "-Zeichen (ASCII 0x2d) beginnen und bis zur nächsten Zeilenumbruch (ASCII 0x0a) oder bis zur Eingabeende (je nachdem, was zuerst erreicht wird) reichen.

Sie können auch C-Stil-Kommentare verwenden, die mit einem " / *Zeichenpaare beginnen und bis zum nächsten * /Zeichenpaare und einschließlich des nächsten * /Zeichenpaare, oder bis zur Eingabeende (je nachdem, was zuerst erreicht wird). C-Stil-Kommentare können über mehrere Zeilen hinweggehen.

sqlite> .help -- Dies ist ein Zeilenkommentar

SQLite-Anweisungen

Alle SQLite-Anweisungen beginnen mit SELECT, INSERT, UPDATE, DELETE, ALTER, DROP und anderen Schlüsselwörtern, und alle Anweisungen enden mit einem Semikolon (;).

SQLite ANALYZE Anweisung

ANALYZE;
oder
ANALYZE database_name;
oder
ANALYZE database_name.table_name;

SQLite AND / OR Ausdruck

SELECT Spalte1, Spalte2....SpalteN
FROM Tabelle_name
WHERE BEDINGUNG-1 {AND|OR} Bedingung-2;

SQLite ALTER TABLE Anweisung

ALTER TABLE table_name ADD COLUMN column_def...;

SQLite ALTER TABLE Anweisung ( Umbenennen)

ALTER TABLE table_name RENAME TO new_table_name;

SQLite ATTACH DATABASE Anweisung

ATTACH DATABASE 'DatabaseName' As 'Alias-Name';

SQLite BEGIN TRANSACTION Anweisung

BEGIN;
oder
BEGIN EXCLUSIVE TRANSACTION;

SQLite BETWEEN Ausdruck

SELECT Spalte1, Spalte2....SpalteN
FROM Tabelle_name
WHERE column_name BETWEEN val-1 AND val-2;

SQLite COMMIT Anweisung

COMMIT;

SQLite CREATE INDEX Anweisung

CREATE INDEX index_name
ON table_name ( column_name COLLATE NOCASE );

SQLite CREATE UNIQUE INDEX Anweisung

CREATE UNIQUE INDEX index_name
ON table_name ( column1, Spalte2,...columnN);

SQLite CREATE TABLE Anweisung

CREATE TABLE table_name(
   column1 datatype,
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
   PRIMARY KEY(one or more columns));

SQLite CREATE TRIGGER Anweisung

CREATE TRIGGER database_name.trigger_name 
BEFORE INSERT ON table_name FOR EACH ROW
BEGIN 
   stmt1; 
   stmt2;
   ....
END;

SQLite CREATE VIEW Anweisung

CREATE VIEW database_name.view_name AS
SELECT statement....;

SQLite CREATE VIRTUAL TABLE Anweisung

CREATE VIRTUAL TABLE database_name.table_name USING weblog(access.log);
oder
CREATE VIRTUAL TABLE database_name.table_name USING fts3( );

SQLite COMMIT TRANSACTION Anweisung

COMMIT;

SQLite COUNT Klausel

SELECT COUNT(column_name) FROM table_name
WHERE BEDINGUNG;

SQLite DELETE Anweisung

DELETE FROM table_name
WHERE {CONDITION};

SQLite DETACH DATABASE Anweisung

DETACH DATABASE 'Alias-Name';

SQLite DISTINCT Klausel

SELECT DISTINCT column1, Spalte2....SpalteN
FROM table_name;

SQLite DROP INDEX Anweisung

DROP INDEX database_name.index_name;

SQLite DROP TABLE Anweisung

DROP TABLE database_name.table_name;

SQLite DROP VIEW Anweisung

DROP INDEX database_name.view_name;

SQLite DROP TRIGGER Anweisung

DROP INDEX database_name.trigger_name;

SQLite EXISTS Klausel

SELECT Spalte1, Spalte2....SpalteN
FROM Tabelle_name
WHERE column_name EXISTS (SELECT * FROM table_name );

SQLite EXPLAIN Anweisung

EXPLAIN INSERT statement...;
oder 
EXPLAIN QUERY PLAN SELECT statement...;

SQLite GLOB-Klausel

SELECT Spalte1, Spalte2....SpalteN
FROM Tabelle_name
WHERE column_name GLOB { PATTERN };

SQLite GROUP BY-Klausel

SELECT SUM(column_name) FROM table_name
WHERE BEDINGUNG
GROUP BY column_name;

SQLite HAVING-Klausel

SELECT SUM(column_name) FROM table_name
WHERE BEDINGUNG
GROUP BY column_name
HAVING (arithmetische Funktion Bedingung);

SQLite INSERT INTO-Anweisung

INSERT INTO table_name( column1, Spalte2....columnN)
VALUES ( value1, value2....valueN);

SQLite IN-Klausel

SELECT Spalte1, Spalte2....SpalteN
FROM Tabelle_name
WHERE column_name IN (val-1, val-2,...val-N);

SQLite LIKE-Klausel

SELECT Spalte1, Spalte2....SpalteN
FROM Tabelle_name
WHERE column_name LIKE { PATTERN };

SQLite NOT IN- Klausel

SELECT Spalte1, Spalte2....SpalteN
FROM Tabelle_name
WHERE column_name NOT IN (val-1, val-2,...val-N);

SQLite ORDER BY-Klausel

SELECT Spalte1, Spalte2....SpalteN
FROM Tabelle_name
WHERE BEDINGUNG
ORDER BY column_name {ASC|DESC};

SQLite PRAGMA-Anweisung

PRAGMA pragma_name;
Zum Beispiel:
PRAGMA page_size;
PRAGMA cache_size = 1024;
PRAGMA table_info(table_name);

SQLite RELEASE SAVEPOINT-Anweisung

RELEASE savepoint_name;

SQLite REINDEX-Anweisung

REINDEX collation_name;
REINDEX database_name.index_name;
REINDEX database_name.table_name;

SQLite ROLLBACK-Anweisung

ROLLBACK;
oder
ROLLBACK TO SAVEPOINT savepoint_name;

SQLite SAVEPOINT-Anweisung

SAVEPOINT savepoint_name;

SQLite SELECT-Anweisung

SELECT Spalte1, Spalte2....SpalteN
FROM table_name;

SQLite UPDATE-Anweisung

UPDATE Tabelle_name
SET Spalte1 = Wert1, Spalte2 = Wert2....SpalteN=WertN
[ WHERE  BEDINGUNG ];

SQLite VACUUM-Anweisung

VACUUM;

SQLite WHERE-Klausel

SELECT Spalte1, Spalte2....SpalteN
FROM Tabelle_name
WHERE BEDINGUNG;