diff options
-rw-r--r-- | db_actions.go | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/db_actions.go b/db_actions.go index 26d9b59..a45c562 100644 --- a/db_actions.go +++ b/db_actions.go @@ -1277,3 +1277,55 @@ func calcForce(s1 structs.Star2D, s2 structs.Star2D) structs.Vec2 { // return the force exerted on s1 by s2 return force } + +func InitStarsTable(db *sql.DB) { + query := `CREATE TABLE public.stars +( + star_id bigint NOT NULL DEFAULT nextval('stars_star_id_seq'::regclass), + x numeric, + y numeric, + vx numeric, + vy numeric, + m numeric +) +WITH ( + OIDS = FALSE +) +TABLESPACE pg_default; + +ALTER TABLE public.stars + OWNER to postgres; +` + err := db.QueryRow(query) + if err != nil { + log.Fatalf("[ E ] InitNodesTable query: %v \n\t\t\tquery: %s\n", err, query) + } +} + +func InitNodesTable(db *sql.DB) { + query := `CREATE TABLE public.nodes + ( + node_id bigint NOT NULL DEFAULT nextval('nodes_node_id_seq'::regclass), + box_width numeric NOT NULL, + total_mass numeric NOT NULL, + depth integer, + star_id bigint NOT NULL, + root_id bigint NOT NULL, + isleaf boolean, + box_center numeric[] NOT NULL, + center_of_mass numeric[] NOT NULL, + subnodes bigint[] NOT NULL + ) + WITH ( + OIDS = FALSE + ) + TABLESPACE pg_default; + + ALTER TABLE public.nodes + OWNER to postgres; +` + err := db.QueryRow(query) + if err != nil { + log.Fatalf("[ E ] InitNodesTable query: %v \n\t\t\tquery: %s\n", err, query) + } +} |