# Connection
Currently, Cotton supports SQLite3 (opens new window), MySQL (opens new window), and PostgreSQL (opens new window). Cotton provides a connect
function which allows you to create a new connection to any supported database.
const db = await connect({
type: "sqlite",
database: "./db.sqlite3",
});
The type
option is required, which determine what type of database you're trying to connect. Then, you can pass the other configurations such as database
, port
, hostname
, username
, and password
.
# Connecting to SQLite
The only configuration that the SQLite adapter care is the database
, which is a path to your database file.
const db = await connect({
type: "sqlite",
database: "./db.sqlite3",
});
Or, you can pass :memory:
if you just want to store it in memory.
const db = await connect({
type: "sqlite",
database: ":memory:",
});
# MySQL and PostgreSQL
Connecting to MySQL and PostgreSQL is pretty straight forward.
MySQL example:
const db = await connect({
type: "mysql",
port: 5432,
database: "mydb",
hostname: "localhost",
username: "root",
password: "12345",
});
PostgreSQL example:
const db = await connect({
type: "postgres",
port: 5432,
database: "mydb",
hostname: "localhost",
username: "root",
password: "12345",
});
Typically MySQL and PostgreSQL database ask for a username and password. However, if there is no password, you can leave it empty.
# Disconnect
Once, you've finished using the database, disconnect it. This can clear more space for you.
await db.disconnect();