Skip to content

zzfima/SQLiteZeroToHero

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 

Repository files navigation

SQLiteZeroToHero

SQLite Zero To Hero

SQLite Learning Path: From Zero to Hero (for C# Senior Engineers)

Phase 1: Fundamentals of SQLite

1. Introduction to SQLite

  • What is SQLite?
  • Use cases (embedded apps, local storage, prototyping)
  • SQLite vs. SQL Server/MySQL/PostgreSQL

Resources:

2. Installing SQLite

  • Install SQLite CLI (sqlite3)
  • Use DB Browser for SQLite (GUI)
  • Create a .sqlite or .db file

Practice:

  • Create a sample database using CLI or DB Browser

Phase 2: SQL Basics in SQLite

3. Data Definition Language (DDL)

  • CREATE TABLE, ALTER TABLE, DROP TABLE
  • SQLite’s dynamic typing system

4. Data Manipulation Language (DML)

  • INSERT, UPDATE, DELETE, SELECT
  • WHERE, ORDER BY, LIMIT, LIKE, IN

5. Constraints

  • PRIMARY KEY, UNIQUE, NOT NULL, DEFAULT, CHECK, FOREIGN KEY

6. Indexes and Views

  • CREATE INDEX and performance considerations
  • CREATE VIEW for abstraction

7. SQLite Functions

  • Date/Time functions
  • String and aggregate functions

Practice:

  • Build a database for a Notes or To-Do List app

Phase 3: Intermediate Features & Integration with C#

8. Advanced Queries

  • JOINs (INNER, LEFT, etc.)
  • Subqueries and CTEs (WITH)
  • Window functions (optional)

9. SQLite with C# (ADO.NET)

  • Use System.Data.SQLite or Microsoft.Data.Sqlite
  • Perform CRUD operations
  • Use parameterized queries
  • Handle transactions

Practice:

  • Build a Console or WPF app using SQLite

Phase 4: Tools, Performance, and Best Practices

10. Performance Optimization

  • Indexing strategies
  • VACUUM, ANALYZE
  • Use EXPLAIN QUERY PLAN

11. File Handling and Size

  • Understanding .db file structure
  • In-memory databases (:memory:)
  • SQLite encryption (see SQLCipher)

12. Best Practices

  • Schema versioning (consider migrations)
  • Error handling in C#
  • Caching and optimization

Phase 5: Expert Usage & Real-World Projects

13. Advanced Use Cases

  • Triggers
  • Custom SQLite functions in C#
  • Using ORMs (Dapper, EF Core with SQLite)

14. Projects

  • Offline-first desktop app
  • Mobile app (MAUI/Xamarin) with SQLite
  • Microservice prototype using SQLite

Bonus: Recommended Resources

Books

  • Using SQLite by Jay A. Kreibich
  • The Definitive Guide to SQLite by Mike Owens

Courses

  • Udemy: “SQLite for Beginners”
  • Pluralsight: “Working with SQLite in C#”

About

SQLite Zero To Hero

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published