Вставка, запрос и обновление строк
Выполняйте операции CRUD из общего кода
«Вставка, запрос и обновление строк» — бесплатный урок Kotlin Multiplatform Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Kotlin Multiplatform Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Reach the Generated Queries
Your database exposes a queries object named after the .sq file. Every labeled statement becomes a method on it.
val queries = database.playerQueriesWrite an Insert Query
Add an insert label in your .sq file. SQLDelight turns its placeholders into typed Kotlin parameters.
insertPlayer:
INSERT INTO player(id, name) VALUES (?, ?);Call Insert from Kotlin
Now you call the generated function with real values. The types are checked, so a wrong argument fails to compile.
queries.insertPlayer(id = 1, name = "Ada")Select All Rows
Run a select query and ask for executeAsList to get every matching row as a typed Kotlin list.
val players = queries.selectAll().executeAsList()Mapped to Data Classes
SQLDelight maps each row to a generated data class with named, typed properties, so you avoid string-keyed cursors.
players.forEach { println(it.name) }Select a Single Row
For a one-row query use executeAsOneOrNull, which returns null instead of crashing when nothing matches.
val player = queries.selectById(1).executeAsOneOrNull()Write an Update Query
An update label changes existing rows. Put the new value first and the matching key last as placeholders.
updateName:
UPDATE player SET name = ? WHERE id = ?;Call Update from Kotlin
Invoke the generated update like any function. SQLDelight runs the SQL and applies it to every matching row.
queries.updateName(name = "Grace", id = 1)Delete Rows
A delete query removes rows by condition. Without a WHERE clause it clears the whole table, so be careful.
deleteById:
DELETE FROM player WHERE id = ?;Group with Transactions
Wrap several writes in a transaction so they all succeed or all roll back together, keeping your data consistent.
queries.transaction {
queries.insertPlayer(2, "Linus")
queries.insertPlayer(3, "Margaret")
}Runs the Same Everywhere
Because the queries are shared, this exact CRUD code behaves identically on Android and iOS. Write it once, trust it twice.
Quick Check
You query for one player by id but it may not exist. Which call is safest?
Recap: Full CRUD
You inserted, selected, updated and deleted rows with type-safe generated queries and grouped writes in a transaction. Next, make it reactive. ✅
Часто задаваемые вопросы
Урок «Вставка, запрос и обновление строк» бесплатный?
Да — полный текст урока «Вставка, запрос и обновление строк» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Kotlin Multiplatform Academy, подпишись на CoddyKit PRO. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.
Чему я научусь в уроке «Вставка, запрос и обновление строк»?
Выполняйте операции CRUD из общего кода Ты практикуешь Kotlin Multiplatform Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Kotlin Multiplatform Academy?
Предыдущий опыт не требуется. Kotlin Multiplatform Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Вставка, запрос и обновление строк»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Kotlin Multiplatform Academy?
Да. Каждый урок Kotlin Multiplatform Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Добавление SQLDelight и написание схем .sq
- Настройка SqlDriver для платформ
- Вставка, запрос и обновление строк
- Наблюдение за таблицами как за Flow