2024-03-22 16:00:06 +01:00

58 lines
1.2 KiB
Go

package database
import (
"database/sql"
"log"
)
type Server struct {
ID int `json:"id"`
Hostname string `json:"hostname"`
Os_id int `json:"os_id"`
}
func GetServersList(db *sql.DB) ([]Server, error) {
var servers []Server
rows, err := db.Query("SELECT * FROM dashboard_server")
if err != nil {
log.Println("Error querying servers list", err)
}
defer rows.Close()
for rows.Next() {
var s Server
err := rows.Scan(&s.ID, &s.Hostname, &s.Os_id)
if err != nil {
log.Println("Error building servers list", err)
}
servers = append(servers, s)
}
return servers, err
}
func GetServersbyID(db *sql.DB, id int64) Server {
var s Server
rows := db.QueryRow("SELECT * FROM dashboard_server WHERE id = ?", id)
rows.Scan(&s.ID, &s.Hostname, &s.Os_id)
return s
}
func GetServersbyOS(db *sql.DB, id int) ([]Server, error) {
var servers []Server
rows, err := db.Query("SELECT * FROM dashboard_server WHERE os_id = ?", id)
if err != nil {
log.Println("Error querying servers list by os_id", err)
}
defer rows.Close()
for rows.Next() {
var s Server
err := rows.Scan(&s.ID, &s.Hostname, &s.Os_id)
if err != nil {
log.Println("Error building servers list", err)
}
servers = append(servers, s)
}
return servers, err
}