This commit is contained in:
2025-01-19 13:46:57 +01:00
commit 596dcc31b2
10 changed files with 189 additions and 0 deletions

46
database/db.go Normal file
View File

@@ -0,0 +1,46 @@
package database
import (
"database/sql"
"fmt"
"github.com/joho/godotenv"
_ "github.com/lib/pq"
"log"
"os"
)
func InitDatabase() (*sql.DB, error) {
err := godotenv.Load(".env")
if err != nil {
log.Fatal("Error loading .env file")
}
password := os.Getenv("PG_PASSWORD")
host := os.Getenv("PG_HOST")
connStr := fmt.Sprintf("user=postgres host=%s dbname=relay password=%s sslmode=disable", host, password)
db, err := sql.Open("postgres", connStr)
if err != nil {
log.Fatal(err)
}
return db, nil
}
func GetUsers(db *sql.DB) ([]string, error) {
query := `SELECT username FROM accounts;`
rows, err := db.Query(query)
if err != nil {
log.Fatal(err)
}
var users []string
for rows.Next() {
var user string
if err := rows.Scan(&user); err != nil {
return nil, err
}
users = append(users, user)
}
return users, err
}