API 參考

Database (Raw SQL)

對 PlainApp 的 SQLite 資料庫進行低階讀寫存取。用於除錯——誤用可能導致應用程式狀態損壞。

型別定義

bash
type DbTableInfo {
  # Column metadata for a single table.
  # Platform-dependent; see PlainApp source for the full list of fields.
}

# dbTableRows returns an array of JSON objects (one per row).
# Each object maps column name to value.
# dbTables and dbTableRowCount return plain scalars.

操作

query

dbPath

取得 PlainApp SQLite 資料庫的絕對檔案系統路徑。

bash
query GetDbPath {
  dbPath
}
query

dbTables

列出資料庫中的所有資料表名稱。

bash
query GetDbTables {
  dbTables
}
query

dbTableInfo

取得資料表的欄中繼資料。

bash
query GetDbTableInfo($table: String!) {
  dbTableInfo(table: $table) { name type notNull defaultValue primaryKey }
}
query

dbTableRowCount

計算資料表中的列數。

bash
query GetDbTableRowCount($table: String!) {
  dbTableRowCount(table: $table)
}
query

dbTableRows

分頁讀取資料表中的列。每列作為對應欄名稱到值的 JSON 物件傳回。

bash
query GetDbTableRows($table: String!, $offset: Int!, $limit: Int!) {
  dbTableRows(table: $table, offset: $offset, limit: $limit)
}
mutation

createDbTableRow

向資料表中插入一列。row 引數為 JSON 字串。

bash
mutation CreateDbTableRow($table: String!, $row: String!) {
  createDbTableRow(table: $table, row: $row)
}
mutation

deleteDbTableRows

依主鍵 id 刪除資料表中的列。

bash
mutation DeleteDbTableRows($table: String!, $ids: [String!]!) {
  deleteDbTableRows(table: $table, ids: $ids)
}