Skip to content

安装

Sutando 的主要目标环境是 Node.js,你需要安装 sutando 库,然后安装适当的数据库包:pg 用于 PostgreSQL、CockroachDB 和 Amazon Redshift,pg-native 用于带有原生 C++ 的 PostgreSQL libpq 绑定(需要安装 PostgresSQL 才能链接),mysql 用于 MySQL 或 MariaDB,sqlite3 用于 SQLite3,或 tedious 用于 MSSQL。

安装

Sutando 可通过 npm(或 yarn/pnpm)获得。

sh
$ npm install sutando --save
sh
$ yarn add sutando
sh
$ pnpm add sutando

你还需要根据要使用的数据库安装以下其中一项:

sh
$ npm install pg --save
$ npm install sqlite3 --save
$ npm install better-sqlite3 --save
$ npm install mysql --save
$ npm install mysql2 --save
$ npm install tedious --save
sh
$ yarn add pg
$ yarn add sqlite3
$ yarn add better-sqlite3
$ yarn add mysql
$ yarn add mysql2
$ yarn add tedious
sh
$ pnpm add pg
$ pnpm add sqlite3
$ pnpm add better-sqlite3
$ pnpm add mysql
$ pnpm add mysql2
$ pnpm add tedious

配置

MySQL

要连接到数据库,你必须添加一个连接。 client 参数是必需的,它决定了哪个客户端适配器将与 Sutando 一起使用。

js
const { sutando } = require('./sutando');

sutando.addConnection({
  client: 'mysql2',
  connection: {
    host : '127.0.0.1',
    port : 3306,
    user : 'your_database_user',
    password : 'your_database_password',
    database : 'myapp_test'
  },
});

// 你可以添加多个连接,只需指定连接名称即可。
sutando.addConnection({
  client: 'mysql2',
  connection: {
    host : '127.0.0.1',
    port : 3306,
    user : 'another_database_user',
    password : 'another_database_password',
    database : 'myapp_another'
  },
}, 'another_mysql');

const db = sutando.connection('another_mysql');

连接选项直接传递给适当的数据库客户端以创建连接,并且可以是对象、连接字符串或返回对象的函数:

SQLite3 or Better-SQLite3

当你使用 SQLite3Better-SQLite3 适配器时,需要一个文件名,而不是网络连接。 例如:

js
sutando.addConnection({
  client: 'sqlite3', // or 'better-sqlite3'
  connection: {
    filename: "./mydb.sqlite"
  }
});

你还可以通过提供 :memory: 作为文件名来使用内存数据库运行 SQLite3Better-SQLite3。 例如:

js
sutando.addConnection({
  client: 'sqlite3', // or 'better-sqlite3'
  connection: {
    filename: ":memory:"
  }
});

当你使用 SQLite3 适配器时,你可以设置用于打开连接的标志。 例如:

js
sutando.addConnection({
  client: 'sqlite3',
  connection: {
    filename: "file:memDb1?mode=memory&cache=shared",
    flags: ['OPEN_URI', 'OPEN_SHAREDCACHE']
  }
});

PostgreSQL

当你使用 PostgreSQL 适配器连接非标准数据库时,可以在 sutando 配置中添加数据库版本。

js
sutando.addConnection({
  client: 'pg',
  version: '7.2',
  connection: {
    host : '127.0.0.1',
    port : 3306,
    user : 'your_database_user',
    password : 'your_database_password',
    database : 'myapp_test'
  }
});

Released under the MIT License.