データベース

Sumor Cloud のツール
追加のドキュメント
MySQLなどのためのデータベースコネクタ。entityに基づいています。

CI
Test
Coverage
Audit

インストール

npm i @sumor/database --save

必須条件

Node.JSのバージョン

Node.JSのバージョン18.x以上が必要です

Node.JS ESモジュールを要求

このパッケージはESモジュールで書かれているため、package.jsonファイルで次のコードを変更してください:

{
  "type": "module"
}

使用法

データベースのインストール

インストールメソッドを使用して、データベースにエンティティとビューをインストールできます。

database.install(config, [リソースパス], [リソースデータ])

ケース1: リソースパスからエンティティとビューをインストールし、プロジェクトルートパスからデータ/entityおよびデータ/viewをロードします。

import database from '@sumor/database'

const config = {
  host: 'localhost',
  user: 'root',
  password: 'password',
  database: 'database',
  port: 3306
}

await database.install(config.database, process.cwd() + '/data')

ケース2: リソースデータからエンティティとビューをインストールし、データ/objectからデータ/entityおよびデータ/viewをロードします。

import database from '@sumor/database'

await database.install(config, {
  entity: {
    Car: {
      property: {
        brand: {
          type: 'string',
          length: 100
        },
        model: {
          type: 'string',
          length: 100
        }
      }
    }
  },
  view: {}
})

一般的な使用法

import database from '@sumor/database'

const config = {
  host: 'localhost',
  user: 'root',
  password: 'password',
  database: 'database',
  port: 3306
}

// 接続プールを持つクライアントを取得
const client = await database.client(config)

// 接続を取得
const db = await client.connect()

// 操作ユーザーを設定
db.setUser('tester')

// レコードを作成
const car1Id = await db.insert('Car', {
  brand: 'BMW',
  model: 'X5'
})
const car2Id = await db.insert('Car', {
  brand: 'BMW',
  model: 'X6'
})
...