Adicione SQLDelight e escreva esquemas .sq
Defina tabelas e gere APIs Kotlin com segurança de tipos
Adicione SQLDelight e escreva esquemas .sq é uma aula grátis de Kotlin Multiplatform Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Kotlin Multiplatform Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
Meet SQLDelight
SQLDelight turns your SQL into type-safe Kotlin you can call from shared code. You write real SQL, it writes the boilerplate. 🗄️
Why It Fits KMP
Because it generates plain Kotlin from SQL, the same database code runs on Android and iOS. The queries are shared, the engine is native per platform.
Add the Gradle Plugin
You enable SQLDelight by adding its Gradle plugin to your shared module so it can scan and process your schema files.
plugins {
id("app.cash.sqldelight") version "2.0.2"
}Add the Runtime
The plugin generates code, but you also need the runtime dependency in commonMain so the generated queries actually execute.
commonMain.dependencies {
implementation("app.cash.sqldelight:runtime:2.0.2")
}Declare a Database
You tell SQLDelight the database name and where it lives. This databases block names the generated class you will use later.
sqldelight {
databases {
create("AppDatabase") {
packageName.set("com.example.db")
}
}
}What Is a .sq File
Your schema lives in .sq files: plain text holding SQL statements plus named queries. SQLDelight reads them and emits Kotlin.
Where .sq Files Go
Place .sq files under commonMain/sqldelight in the package you declared. The plugin only looks there for your schema.
commonMain/sqldelight/com/example/db/Player.sqDefine a Table
Inside a .sq file you write a normal CREATE TABLE statement. SQLDelight uses it to type-check every query you write.
CREATE TABLE player (
id INTEGER NOT NULL PRIMARY KEY,
name TEXT NOT NULL
);Name Your Queries
Each query starts with a label ending in a colon. SQLDelight turns that label into a Kotlin function you can call.
selectAll:
SELECT * FROM player;Parameters Become Arguments
A ? placeholder in SQL becomes a typed Kotlin function parameter, so the compiler checks your inputs for you.
selectById:
SELECT * FROM player WHERE id = ?;Generated Type Safety
SQLDelight maps your columns to Kotlin types. A wrong column or type is caught at compile time, not at runtime in production.
Quick Check
Where do your SQLDelight schema files belong in a KMP project?
Recap: Schema First
You added the plugin and runtime, declared a database, and wrote a .sq schema with named queries. Next you give each platform a driver. ✅
Perguntas Frequentes
A aula “Adicione SQLDelight e escreva esquemas .sq” é grátis?
Sim — o texto completo de “Adicione SQLDelight e escreva esquemas .sq” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Kotlin Multiplatform Academy, atualize para CoddyKit PRO. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.
O que vou aprender em “Adicione SQLDelight e escreva esquemas .sq”?
Defina tabelas e gere APIs Kotlin com segurança de tipos Você pratica Kotlin Multiplatform Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Kotlin Multiplatform Academy?
Nenhuma experiência prévia é necessária. Kotlin Multiplatform Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “Adicione SQLDelight e escreva esquemas .sq”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Kotlin Multiplatform Academy?
Sim. Cada aula de Kotlin Multiplatform Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Adicione SQLDelight e escreva esquemas .sq
- Configuração do SqlDriver da plataforma
- Insira, consulte e atualize linhas
- Observe tabelas como Flow