Kotlin Multiplatform Academy · leksjon

Sette inn, spørre etter og oppdatere rader

Kjør CRUD-operasjoner fra delt kode

Leksjon 3 av 413 trinn

Sette inn, spørre etter og oppdatere rader er en gratis leksjon i Kotlin Multiplatform Academy på CoddyKit. Dette er leksjon 3 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Kotlin Multiplatform Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Kotlin Multiplatform Academy inneholder totalt 4 leksjoner.

Finn de genererte spørringene

Databasen din eksponerer et queries-objekt oppkalt etter .sq-filen. Hver navngitte setning blir en metode på objektet.

val queries = database.playerQueries

Skriv en insert-spørring

Legg til en insert-etikett i .sq-filen. SQLDelight gjør plassholderne om til typesikre Kotlin-parametere.

insertPlayer:
INSERT INTO player(id, name) VALUES (?, ?);

Kall insert fra Kotlin

Nå kaller du den genererte funksjonen med faktiske verdier. Typene blir kontrollert, så et feil argument fører til kompileringsfeil.

queries.insertPlayer(id = 1, name = "Ada")

Hent alle rader

Kjør en select-spørring og bruk executeAsList for å hente alle samsvarende rader som en typesikker Kotlin-liste.

val players = queries.selectAll().executeAsList()

Mappet til dataklasser

SQLDelight mapper hver rad til en generert dataklasse med navngitte, typesikre egenskaper, slik at du slipper strengbaserte markører.

players.forEach { println(it.name) }

Hent én rad

For en spørring som skal returnere én rad bruker du executeAsOneOrNull. Den returnerer null i stedet for å krasje når ingenting samsvarer.

val player = queries.selectById(1).executeAsOneOrNull()

Skriv en update-spørring

En update-etikett endrer eksisterende rader. Plasser den nye verdien først og nøkkelen som skal samsvare, sist, som plassholdere.

updateName:
UPDATE player SET name = ? WHERE id = ?;

Kall update fra Kotlin

Kall den genererte update-funksjonen som hvilken som helst annen funksjon. SQLDelight kjører SQL-en og bruker den på alle samsvarende rader.

queries.updateName(name = "Grace", id = 1)

Slett rader

En delete-spørring fjerner rader basert på en betingelse. Uten en WHERE-klausul tømmes hele tabellen, så vær forsiktig.

deleteById:
DELETE FROM player WHERE id = ?;

Gruppér med transaksjoner

Pakk flere skriveoperasjoner inn i en transaksjon, slik at de enten lykkes eller rulles tilbake samlet, og dataene forblir konsistente.

queries.transaction {
    queries.insertPlayer(2, "Linus")
    queries.insertPlayer(3, "Margaret")
}

Kjører likt overalt

Fordi spørringene er delte, oppfører denne nøyaktig samme CRUD-koden seg identisk på Android og iOS. Skriv den én gang, stol på den to ganger.

Kort kontroll

Du spør etter én spiller med id, men spilleren finnes kanskje ikke. Hvilket kall er tryggest?

Oppsummering: Full CRUD

Du satte inn, hentet, oppdaterte og slettet rader med typesikre genererte spørringer, og grupperte skriveoperasjonene i en transaksjon. Deretter gjør du det reaktivt. ✅

Gratis å komme i gang

Lær deg Kotlin med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
30
Leksjoner
120

Ofte stilte spørsmål

Er leksjonen «Sette inn, spørre etter og oppdatere rader» gratis?

Ja – hele teksten i «Sette inn, spørre etter og oppdatere rader» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Kotlin Multiplatform Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Kotlin Multiplatform Academy inneholder totalt 4 leksjoner.

Hva lærer jeg i «Sette inn, spørre etter og oppdatere rader»?

Kjør CRUD-operasjoner fra delt kode Du øver på Kotlin Multiplatform Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Kotlin Multiplatform Academy?

Ingen tidligere erfaring er nødvendig. Kotlin Multiplatform Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.

Hvor lang tid tar leksjonen «Sette inn, spørre etter og oppdatere rader»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Kotlin Multiplatform Academy-leksjonen?

Ja. Alle Kotlin Multiplatform Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Legge til SQLDelight og skrive .sq-skjemaer
  2. Sette opp SqlDriver for plattformer
  3. Sette inn, spørre etter og oppdatere rader
  4. Observere tabeller som Flow
← Tilbake til Kotlin Multiplatform Academy