Skip to content

はじめに

SQLDelight 2.0

現在 SQLDelight 1.x を使用している場合は、SQLDelight 2.0 へのアップグレードに関するドキュメントを確認してください。

SQLDelight は、SQL 文からタイプセーフな Kotlin API を生成します。コンパイル時にスキーマ、ステートメント、マイグレーションを検証し、オートコンプリートやリファクタリングなどの IDE 機能を提供することで、SQL の作成とメンテナンスを容易にします。

SQLDelight は、次のような既存の SQL スキーマから、

sql
CREATE TABLE hockey_player (
  id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
  name TEXT NOT NULL,
  number INTEGER NOT NULL
);

SQL 文やクエリを実行するためのタイプセーフなコードを生成します。

intro.gif


サポートされているダイアレクトとプラットフォーム

SQLDelight は、さまざまな SQL ダイアレクト(方言)とプラットフォームをサポートしています。

サードパーティのダイアレクト

CockroachDB


JVM

DB2


JVM

Oracle DB


JVM

スナップショット

開発版のスナップショット(IDE プラグインの zip を含む)は、Central Portal Snapshots リポジトリで入手可能です。2.0.0 以降のスナップショットでは、すべての座標(coordinates)が com.squareup.sqldelight ではなく app.cash.sqldelight になっていることに注意してください。

最新のスナップショットバージョンのドキュメントページはこちらにあります。

kotlin
// settings.gradle.kts
pluginManagement {
    repositories {
        gradlePluginPortal()
        maven(url = "https://central.sonatype.com/repository/maven-snapshots")
    }
}

// build.gradle.kts
plugins {
    id("app.cash.sqldelight") version "SNAPSHOT-VERSION"
}

repositories {
    maven(url = "https://central.sonatype.com/repository/maven-snapshots")
}
groovy
// settings.gradle
pluginManagement {
    repositories {
        gradlePluginPortal()
        maven { url "https://central.sonatype.com/repository/maven-snapshots" }
    }
}

// build.gradle
plugins {
    id "app.cash.sqldelight" version "SNAPSHOT-VERSION"
}

repositories {
    maven { url "https://central.sonatype.com/repository/maven-snapshots" }
}

IntelliJ でアルファチャンネル https://plugins.jetbrains.com/plugins/alpha/com.squareup.sqldelight を使用することで、アルファ版の IDE プラグインも利用可能です。 また、スナップショットは EAP チャンネル https://plugins.jetbrains.com/plugins/eap/com.squareup.sqldelight でも提供されています。

IntelliJ_alpha_channel