https://github.com/grafana/xk6-sql-driver-postgres
xk6-sql driver extension for Postgres database support
https://github.com/grafana/xk6-sql-driver-postgres
xk6 xk6-sql-driver
Last synced: 6 months ago
JSON representation
xk6-sql driver extension for Postgres database support
- Host: GitHub
- URL: https://github.com/grafana/xk6-sql-driver-postgres
- Owner: grafana
- License: agpl-3.0
- Created: 2024-10-17T15:13:44.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-11-05T14:46:28.000Z (8 months ago)
- Last Synced: 2024-11-14T22:35:10.284Z (8 months ago)
- Topics: xk6, xk6-sql-driver
- Language: Go
- Homepage:
- Size: 36.1 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
# xk6-sql-driver-postgres
Database driver extension for [xk6-sql](https://github.com/grafana/xk6-sql) k6 extension to support Postgres database.
## Example
```JavaScript file=examples/example.js
import sql from "k6/x/sql";
import driver from "k6/x/sql/driver/postgres";// The second argument is a PostgreSQL connection string, e.g.
// postgres://myuser:[email protected]:5432/postgres?sslmode=disable
const db = sql.open(driver, "");export function setup() {
db.exec(`
CREATE TABLE IF NOT EXISTS keyvalues
(
id SERIAL PRIMARY KEY,
key VARCHAR(50) NOT NULL,
value VARCHAR(50)
);
`);
}export function teardown() {
db.close();
}export default function () {
let result = db.exec(`
INSERT INTO roster
(given_name, family_name)
VALUES
('Peter', 'Pan'),
('Wendy', 'Darling'),
('Tinker', 'Bell'),
('James', 'Hook');
`);
console.log(`${result.rowsAffected()} rows inserted`);let rows = db.query("SELECT * FROM roster WHERE given_name = $1;", "Peter");
for (const row of rows) {
console.log(`${row.family_name}, ${row.given_name}`);
}
}
```## Usage
Check the [xk6-sql documentation](https://github.com/grafana/xk6-sql) on how to use this database driver.