public/sql.md
... ...
@@ -38,23 +38,46 @@ div .venn {
38 38
39 39
### [2] Creating a database and connecting (from shell)
40 40
41
+ # PostgreSQL
42
+
41 43
dropdb example
42 44
createdb example
43 45
psql example
44
-
46
+
47
+ # sqlite3
48
+ rm example.db # drop a sqlite3 database (just remove the file)
49
+ sqlite3 example.db # if the db doesn't exist, creates it; starts the command-line interface
50
+
45 51
### [3] Dropping and creating a table
46 52
53
+The column with type `serial` for PostgreSQL, or 'integer primary key autoincrement` for sqlite3
54
+is a primary key that gets a value automatically when you insert a new row. By this means, you don't
55
+have to find out what the highest id is; the database system sets the key value appropriately
56
+automatically.
57
+
58
+The `--` indicates a comment.
59
+
60
+ # PostgreSQL
61
+
47 62
drop table names;
48 63
create table names (
49 64
id serial, -- "auto increment"
50 65
first_name text
51 66
);
52 67
68
+ # sqlite3
69
+
70
+ drop table names;
71
+ create table names (
72
+ id integer primary key autoincrement,
73
+ first_name text
74
+ );
75
+
53 76
### [4] Another
54 77
55 78
drop table books;
56 79
create table books (
57
- id serial, -- "auto increment"
80
+ id integer primary key autoincrement, -- remember, for PostgreSQL, use: serial
58 81
name_id int,
59 82
title text
60 83
);