Viewing Schema
Schema inspection helps you answer key questions fast: What columns exist? Which names are exact? What constraints are defined?
In SQLite CLI, .schema is the fastest entry point.
Core Concepts
flowchart TD
A[Need structure details] --> B[Run .schema]
B --> C{All objects or one table?}
C -->|All| D[.schema]
C -->|One table| E[.schema table_name]
| Command | Use case |
|---|---|
.schema | Show CREATE statements for all objects |
.schema users | Show definition for one object |
Code Examples
-- Show schema for everything in current database.
.schema
| Expected output |
|---|
One or more CREATE ... statements (or nothing in empty DB). |
-- Show schema for a specific object name.
.schema users
| Expected output |
|---|
CREATE TABLE users (...) if it exists; otherwise no match output. |
SQLite-Specific Nuances
SQLite Nuance
SQLite stores schema definitions as SQL text internally.
That is why .schema can print CREATE statements directly.
Common Pitfalls / Best Practices
Pitfall
Guessing column names before checking schema.
A small typo can produce confusing query errors.
Best Practice
Before writing a query on unfamiliar data, run .schema table_name first.
Quick Challenge
In any database with at least one table, run .schema and identify one exact column name you could query later.
View Solution
Example pattern:
.schema
| Expected result |
|---|
You can read exact object and column names directly from CREATE statements. |