Skip to content

Commit b463788

Browse files
committed
Improved example
1 parent 3d5e5e8 commit b463788

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

examples/libpq.zig

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,38 @@
11
const std = @import("std");
2-
const assert = std.debug.assert;
3-
const print = std.debug.print;
2+
const expect = std.testing.expect;
43

54
const pg = @cImport({
65
@cInclude("libpq-fe.h");
76
});
87

9-
pub fn main() void {
8+
pub fn main() !void {
109
const conn = pg.PQconnectdb("postgres://localhost/pgvector_zig_test");
11-
assert(pg.PQstatus(conn) == pg.CONNECTION_OK);
10+
try expect(pg.PQstatus(conn) == pg.CONNECTION_OK);
1211

1312
var res = pg.PQexec(conn, "CREATE EXTENSION IF NOT EXISTS vector");
14-
assert(pg.PQresultStatus(res) == pg.PGRES_COMMAND_OK);
13+
try expect(pg.PQresultStatus(res) == pg.PGRES_COMMAND_OK);
1514
pg.PQclear(res);
1615

1716
res = pg.PQexec(conn, "DROP TABLE IF EXISTS items");
18-
assert(pg.PQresultStatus(res) == pg.PGRES_COMMAND_OK);
17+
try expect(pg.PQresultStatus(res) == pg.PGRES_COMMAND_OK);
1918
pg.PQclear(res);
2019

2120
res = pg.PQexec(conn, "CREATE TABLE items (id bigserial PRIMARY KEY, embedding vector(3))");
22-
assert(pg.PQresultStatus(res) == pg.PGRES_COMMAND_OK);
21+
try expect(pg.PQresultStatus(res) == pg.PGRES_COMMAND_OK);
2322
pg.PQclear(res);
2423

2524
const paramValues = [3:0][*c]const u8{ "[1,1,1]", "[2,2,2]", "[1,1,2]" };
2625
res = pg.PQexecParams(conn, "INSERT INTO items (embedding) VALUES ($1), ($2), ($3)", 3, null, &paramValues, null, null, 0);
27-
assert(pg.PQresultStatus(res) == pg.PGRES_COMMAND_OK);
26+
try expect(pg.PQresultStatus(res) == pg.PGRES_COMMAND_OK);
2827
pg.PQclear(res);
2928

3029
const paramValues2 = [1:0][*c]const u8{"[1,1,1]"};
3130
res = pg.PQexecParams(conn, "SELECT * FROM items ORDER BY embedding <-> $1 LIMIT 5", 1, null, &paramValues2, null, null, 0);
32-
assert(pg.PQresultStatus(res) == pg.PGRES_TUPLES_OK);
31+
try expect(pg.PQresultStatus(res) == pg.PGRES_TUPLES_OK);
3332
const ntuples = pg.PQntuples(res);
3433
var i: c_int = 0;
3534
while (i < ntuples) {
36-
print("{s}: {s}\n", .{ pg.PQgetvalue(res, i, 0), pg.PQgetvalue(res, i, 1) });
35+
std.debug.print("{s}: {s}\n", .{ pg.PQgetvalue(res, i, 0), pg.PQgetvalue(res, i, 1) });
3736
i += 1;
3837
}
3938
pg.PQclear(res);

0 commit comments

Comments
 (0)