At the moment, written with MySQL 5.7.26 in mind.
This is a MySQL 5.7 adapter for @squill/squill
TODO
- Detailed usage instructions
import * as sql from "@squill/squill";
import * as mysql from "@squill/mysql-5.7";
const myTable = sql.table("myTable")
.addColumns({
myTableId : sql.dtBigIntSigned(),
description : sql.dtVarChar(1024),
})
.setAutoIncrement(columns => columns.myTableId);
const pool = new mysql.Pool({
host : ,
database : ,
user : ,
password : ,
charset : mysql.CharSet.utf8mb4,
});
await pool
.acquire(connection => myTable
.whereEqPrimaryKey({
myTableId : 1337n,
})
.fetchOne(connection)
)
.then(
(row) => {
console.log(row.myTableId);
console.log(row.description);
},
(err) => {
if (sql.isSqlError(err)) {
} else {
}
}
);
const myQuery = sql.from(myTable)
.select(columns => [
columns.myTableId
sql.concat(
"Description: ",
columns.description
).as("labeledDescription"),
]);
await pool
.acquire(connection => myQuery
.whereEqPrimaryKey(
tables => tables.myTable,
{
myTableId : 1337n,
}
)
.fetchOne(connection)
)
.then(
(row) => {
console.log(row.myTableId);
console.log(row.labeledDescription);
},
(err) => {
if (sql.isSqlError(err)) {
} else {
}
}
);