in jdbc/src/main/scala/org/apache/pekko/projection/jdbc/internal/Dialect.scala [128:163]
def createManagementTableStatement(table: String): immutable.Seq[String] =
immutable.Seq(s"""CREATE TABLE IF NOT EXISTS $table (
| "PROJECTION_NAME" VARCHAR(255) NOT NULL,
| "PROJECTION_KEY" VARCHAR(255) NOT NULL,
| "PAUSED" BOOLEAN NOT NULL,
| "LAST_UPDATED" BIGINT NOT NULL,
| PRIMARY KEY("PROJECTION_NAME", "PROJECTION_KEY")
|);""".stripMargin)
def dropManagementTableStatement(table: String): String =
s"""DROP TABLE IF EXISTS $table;"""
def readManagementStateQuery(table: String) =
s"""SELECT * FROM $table WHERE "PROJECTION_NAME" = ? and "PROJECTION_KEY" = ?"""
def insertManagementStatement(table: String): String =
s"""INSERT INTO $table (
| "PROJECTION_NAME",
| "PROJECTION_KEY",
| "PAUSED",
| "LAST_UPDATED"
|) VALUES (?,?,?,?)""".stripMargin
def updateManagementStatement(table: String): String =
s"""UPDATE $table
|SET
| "PAUSED" = ?,
| "LAST_UPDATED" = ?
|WHERE "PROJECTION_NAME" = ? AND "PROJECTION_KEY" = ?""".stripMargin
object InsertManagementIndices {
val PROJECTION_NAME = 1
val PROJECTION_KEY = 2
val PAUSED = 3
val LAST_UPDATED = 4
}