0Pricing
Kotlin Multiplatform Academy · Урок

Добавление SQLDelight и написание схем .sq

Определяйте таблицы и создавайте типобезопасные API Kotlin

«Добавление SQLDelight и написание схем .sq» — бесплатный урок Kotlin Multiplatform Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Kotlin Multiplatform Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

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.sq

Define 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. ✅

Часто задаваемые вопросы

Урок «Добавление SQLDelight и написание схем .sq» бесплатный?

Да — полный текст урока «Добавление SQLDelight и написание схем .sq» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Kotlin Multiplatform Academy, подпишись на CoddyKit PRO. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.

Чему я научусь в уроке «Добавление SQLDelight и написание схем .sq»?

Определяйте таблицы и создавайте типобезопасные API Kotlin Ты практикуешь Kotlin Multiplatform Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Kotlin Multiplatform Academy?

Предыдущий опыт не требуется. Kotlin Multiplatform Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Добавление SQLDelight и написание схем .sq»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Kotlin Multiplatform Academy?

Да. Каждый урок Kotlin Multiplatform Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Добавление SQLDelight и написание схем .sq
  2. Настройка SqlDriver для платформ
  3. Вставка, запрос и обновление строк
  4. Наблюдение за таблицами как за Flow
← Назад к Kotlin Multiplatform Academy