From a92af09feabb7ff9359eef71c3cda4bde36ef4df Mon Sep 17 00:00:00 2001 From: jbranchaud Date: Tue, 17 Dec 2024 12:28:13 -0600 Subject: [PATCH] Add Explore The Database Schema as a SQLite TIL --- README.md | 3 ++- sqlite/explore-the-database-schema.md | 31 +++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 sqlite/explore-the-database-schema.md diff --git a/README.md b/README.md index 5213c2a..f8f0055 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ pairing with smart people at Hashrocket. For a steady stream of TILs, [sign up for my newsletter](https://crafty-builder-6996.ck.page/e169c61186). -_1540 TILs and counting..._ +_1541 TILs and counting..._ --- @@ -1360,6 +1360,7 @@ _1540 TILs and counting..._ ### SQLite - [Display Results In Readable Column Format](sqlite/display-results-in-readable-column-format.md) +- [Explore The Database Schema](sqlite/explore-the-database-schema.md) ### Streaming diff --git a/sqlite/explore-the-database-schema.md b/sqlite/explore-the-database-schema.md new file mode 100644 index 0000000..10e866a --- /dev/null +++ b/sqlite/explore-the-database-schema.md @@ -0,0 +1,31 @@ +# Explore The Database Schema + +The first thing I like to do when connecting to a database is get a quick lay +of the land. What are the tables and what do they look like? + +I can list all tables with the `.tables` dot-command. + +```sql +sqlite> .tables +ingredient_amounts ingredients recipes +``` + +I can then look at the `create table` statement for specific tables to see what +their schema looks like: + +```sql +sqlite> .schema recipes +CREATE TABLE recipes ( + id integer primary key, + name varchar not null, + description text not null, + instructions text not null +); +``` + +The `.schema` dot-command can also be used without any argument and it will +display the schema for all tables of all connected databases. + +Run `.help` from the `sqlite3` prompt for more dot-command options. + +[source](https://www.sqlite.org/cli.html#querying_the_database_schema)