From cc133dd2e36c9eee7f04a29322e5a18181971189 Mon Sep 17 00:00:00 2001 From: physcik Date: Tue, 14 Apr 2026 01:06:17 +0500 Subject: db connection --- backend/src/Database/Connection.zig | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 backend/src/Database/Connection.zig (limited to 'backend/src/Database/Connection.zig') diff --git a/backend/src/Database/Connection.zig b/backend/src/Database/Connection.zig new file mode 100644 index 0000000..638d92b --- /dev/null +++ b/backend/src/Database/Connection.zig @@ -0,0 +1,28 @@ +const std = @import("std"); +const pg = @import("pg"); +const dotenv = @import("dotenv"); + +var pool: *pg.Pool = undefined; + +pub fn Connect(alloc: std.mem.Allocator) !void { + var env = try dotenv.init(alloc, ".env"); + defer env.deinit(); + + pool = try pg.Pool.init(alloc, .{ + .size = 5, + .connect = .{ + .port = 5432, + .host = "localhost" + }, + .auth = .{ + .database = "cyber2020", + .username = env.get("PG_USERNAME") orelse unreachable, + .password = env.get("PG_PASSWORD") orelse unreachable, + .timeout = 10_000 + } + }); +} + +pub fn Disconnect() void { + pool.deinit(); +} -- cgit v1.3