我有一个sql文件(database.sql),在启动我的服务器之前,我想执行一些命令,它看起来是这样的
CREATE TABLE forums (
id BIGSERIAL primary key,
slug TEXT NOT NULL UNIQUE,
title TEXT,
author TEXT references users(login),
threads BIGINT DEFAULT 0,
posts BIGINT DEFAULT 0
);
我知道,我应该使用db.Exec(request),但我有很多请求(“CREATETABLE user”和其他……)
我不知道怎么做
帮助,非常感谢!
1条答案
按热度按时间ogq8wdun1#
您可以将文件的内容读入字符串并将其传递给
Exec
。如果你的
database.sql
是以这种方式格式化的,或者它包含了破坏db.Exec
的查询,那么你可以将os/exec
和psql
一起使用(如果它安装在运行代码的机器上)。如果文件中有多个SQL语句,请不要忘记将
MultiStatements
设置为true
。示例: