SQLite Cookbook: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 26: | Line 26: | ||
<syntaxhighlight lang="sql"> | <syntaxhighlight lang="sql"> | ||
.schema [tablename] | .schema [tablename] | ||
</syntaxhighlight> | |||
=== Display columns in table === | |||
<syntaxhighlight lang="sql"> | |||
PRAGMA table_info(table_name); | |||
</syntaxhighlight> | </syntaxhighlight> | ||
| Line 34: | Line 40: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Queries == | |||
== Renaming or deleting a column from a SQLite table == | === Controlling query results format === | ||
<syntaxhighlight lang="sql"> | |||
.mode columns | |||
.header on | |||
</syntaxhighlight> | |||
== Defining and altering tables == | |||
=== Renaming or deleting a column from a SQLite table === | |||
* SQLite supports `ALTER TABLE [table_name] ADD COLUMN ([column_name] [column_properties])`. | * SQLite supports `ALTER TABLE [table_name] ADD COLUMN ([column_name] [column_properties])`. | ||
| Line 48: | Line 64: | ||
DROP TABLE t1_backup; | DROP TABLE t1_backup; | ||
COMMIT; | COMMIT; | ||
</syntaxhighlight> | |||
=== Autoincrement primary key === | |||
Create a primary key with | |||
<syntaxhighlight lang="sql"> | |||
CREATE TABLE my_table { | |||
id INTEGER PRIMARY KEY, | |||
val TEXT | |||
}; | |||
</syntaxhighlight> | |||
Insert a new row in the table, placing a value one greater than the highest existing primary key in the `id` column, by assigning `NULL` to the `id` column <ref>[http://www.sqlite.org/faq.html#q1|SQLite Frequently Asked Questions] — sqlite.org</ref>: | |||
<syntaxhighlight lang="sql"> | |||
INSERT INTO my_table (id, val) VALUES (NULL, 'some value'); | |||
</syntaxhighlight> | </syntaxhighlight> | ||
| Line 55: | Line 88: | ||
.quit | .quit | ||
</syntaxhighlight> | </syntaxhighlight> | ||
or | |||
<syntaxhighlight lang="sql"> | |||
.exit | |||
</syntaxhighlight> | |||
== Notes == | |||
<references /> | |||
Revision as of 17:12, 14 December 2017
Overview
Task that have been tackled in the past with SQLite.
Running sqlite from the command line in Windows 7
Run a bash shell, e.g.GIT Bashsqlite3can be run in Powershell- If the
sqlite3program isn't in the system path, it can be run using the full path to the executable:
$ /c/path/to/django/install/sqlite/sqlite3 [database_name]
Displaying table properties
Show tables in the database
.tables
Show table definition
.schema [tablename]
Display columns in table
PRAGMA table_info(table_name);
Save table definition to text file
$ /path/to/django/install/sqlite/sqlite3 [database_name] '.schema [tablename]' > /path/to/export-file.txt
Queries
Controlling query results format
.mode columns .header on
Defining and altering tables
Renaming or deleting a column from a SQLite table
- SQLite supports
ALTER TABLE [table_name] ADD COLUMN ([column_name] [column_properties]). - SQLite does not support
UPDATE COLUMNorDROP COLUMN.
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;
Autoincrement primary key
Create a primary key with
CREATE TABLE my_table {
id INTEGER PRIMARY KEY,
val TEXT
};
Insert a new row in the table, placing a value one greater than the highest existing primary key in the id column, by assigning NULL to the id column [1]:
INSERT INTO my_table (id, val) VALUES (NULL, 'some value');
Quitting the sqlite3 program
.quit
or
.exit
Notes
- ↑ Frequently Asked Questions — sqlite.org