SQLite - Sintaks

SQLite diikuti oleh seperangkat aturan dan pedoman unik yang disebut Sintaks. Bab ini mencantumkan semua Sintaks SQLite dasar.

Sensitivitas Kasus

Hal penting yang perlu diperhatikan adalah bahwa SQLite adalah case insensitive, yaitu klausul GLOB dan glob memiliki arti yang sama dalam pernyataan SQLite.

Komentar

Komentar SQLite adalah catatan tambahan, yang dapat Anda tambahkan ke kode SQLite untuk meningkatkan keterbacaannya dan dapat muncul di mana saja; spasi dapat terjadi, termasuk ekspresi di dalam dan di tengah pernyataan SQL lainnya, tetapi tidak dapat disarangkan.

Komentar SQL dimulai dengan dua karakter "-" yang berurutan (ASCII 0x2d) dan meluas hingga dan termasuk karakter baris baru berikutnya (ASCII 0x0a) atau hingga akhir masukan, mana saja yang lebih dulu.

Anda juga dapat menggunakan komentar gaya-C, yang dimulai dengan "/ *" dan diperluas hingga dan termasuk pasangan karakter "* /" berikutnya atau hingga akhir masukan, mana saja yang lebih dulu. Komentar gaya C dapat mencakup beberapa baris.

sqlite> .help -- This is a single line comment

Pernyataan SQLite

Semua pernyataan SQLite dimulai dengan salah satu kata kunci seperti SELECT, INSERT, UPDATE, DELETE, ALTER, DROP, dll., Dan semua pernyataan diakhiri dengan titik koma (;).

Pernyataan SQLite ANALYZE

ANALYZE;
or
ANALYZE database_name;
or
ANALYZE database_name.table_name;

SQLite DAN / ATAU Klausul

SELECT column1, column2....columnN
FROM table_name
WHERE CONDITION-1 {AND|OR} CONDITION-2;

Pernyataan SQLite ALTER TABLE

ALTER TABLE table_name ADD COLUMN column_def...;

Pernyataan SQLite ALTER TABLE (Ganti nama)

ALTER TABLE table_name RENAME TO new_table_name;

Pernyataan SQLite ATTACH DATABASE

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

Pernyataan SQLite BEGIN TRANSACTION

BEGIN;
or
BEGIN EXCLUSIVE TRANSACTION;

SQLite BETWEEN Clause

SELECT column1, column2....columnN
FROM table_name
WHERE column_name BETWEEN val-1 AND val-2;

Pernyataan COMMIT SQLite

COMMIT;

Pernyataan SQLite CREATE INDEX

CREATE INDEX index_name
ON table_name ( column_name COLLATE NOCASE );

SQLite CREATE UNIQUE INDEX Statement

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

Pernyataan SQLite CREATE TABLE

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

Pernyataan SQLite CREATE TRIGGER

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

Pernyataan CREATE VIEW SQLite

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

Pernyataan SQLite CREATE VIRTUAL TABLE

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

Pernyataan TRANSAKSI KOMIT SQLite

COMMIT;

SQLite COUNT Clause

SELECT COUNT(column_name)
FROM table_name
WHERE CONDITION;

Pernyataan SQLite DELETE

DELETE FROM table_name
WHERE {CONDITION};

Pernyataan SQLite Pisahkan DATABASE

DETACH DATABASE 'Alias-Name';

Klausul DISTINCT SQLite

SELECT DISTINCT column1, column2....columnN
FROM table_name;

Pernyataan SQLite DROP INDEX

DROP INDEX database_name.index_name;

Pernyataan SQLite DROP TABLE

DROP TABLE database_name.table_name;

Pernyataan SQLite DROP VIEW

DROP INDEX database_name.view_name;

Pernyataan SQLite DROP TRIGGER

DROP INDEX database_name.trigger_name;

Klausul SQLite EXISTS

SELECT column1, column2....columnN
FROM table_name
WHERE column_name EXISTS (SELECT * FROM   table_name );

Pernyataan SQLite EXPLAIN

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

Klausul GLOB SQLite

SELECT column1, column2....columnN
FROM table_name
WHERE column_name GLOB { PATTERN };

SQLite GROUP BY Klausul

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

Klausul SQLite HAVING

SELECT SUM(column_name)
FROM table_name
WHERE CONDITION
GROUP BY column_name
HAVING (arithematic function condition);

Pernyataan SQLite INSERT INTO

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

SQLite IN Klausul

SELECT column1, column2....columnN
FROM table_name
WHERE column_name IN (val-1, val-2,...val-N);

Klausul Seperti SQLite

SELECT column1, column2....columnN
FROM table_name
WHERE column_name LIKE { PATTERN };

SQLite TIDAK DALAM Klausul

SELECT column1, column2....columnN
FROM table_name
WHERE column_name NOT IN (val-1, val-2,...val-N);

SQLite ORDER BY Clause

SELECT column1, column2....columnN
FROM table_name
WHERE CONDITION
ORDER BY column_name {ASC|DESC};

Pernyataan SQLite PRAGMA

PRAGMA pragma_name;

For example:

PRAGMA page_size;
PRAGMA cache_size = 1024;
PRAGMA table_info(table_name);

Pernyataan SQLite RELEASE SAVEPOINT

RELEASE savepoint_name;

Pernyataan SQLite REINDEX

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

Pernyataan ROLLBACK SQLite

ROLLBACK;
or
ROLLBACK TO SAVEPOINT savepoint_name;

Pernyataan SQLite SAVEPOINT

SAVEPOINT savepoint_name;

Pernyataan SQLite SELECT

SELECT column1, column2....columnN
FROM table_name;

Pernyataan SQLite UPDATE

UPDATE table_name
SET column1 = value1, column2 = value2....columnN=valueN
[ WHERE  CONDITION ];

Pernyataan SQLite VACUUM

VACUUM;

Klausul WHERE SQLite

SELECT column1, column2....columnN
FROM table_name
WHERE CONDITION;