客户端生命周期
连接
要创建新的 Prisma 客户端实例
client := db.NewClient()
if err := client.Prisma.Connect(); err != nil {
handle(err)
}
断开连接
理想情况下,您应该在完成操作后断开与数据库的连接
if err := client.Prisma.Disconnect(); err != nil {
panic(fmt.Errorf("could not disconnect: %w", err))
}
如果您使用的是 Web 服务器,最好的处理方式是捕获 SIGTERM
信号,断开与数据库的连接,然后清理您的 Web 服务器
c := make(chan os.Signal, 1)
signal.Notify(c, os.Interrupt, syscall.SIGTERM)
go func() {
<-c
if err := client.Prisma.Disconnect(); err != nil {
panic(fmt.Errorf("could not disconnect: %w", err))
}
// clean up your webserver here
// e.g. httpServer.Shutdown(ctx)
os.Exit(0)
}()