Go database/sql文档

尼古拉斯河马 · · 2999 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

No.1 文档概要

在Golang中使用SQL或类似SQL的数据库的惯用方法是通过 database/sql 包操作。它为面向行的数据库提供了轻量级的接口。这篇文章是关于如何使用它,最常见的参考。

为什么需要这个?包文档告诉你每件事情都做了什么,但它并没有告诉你如何使用这个包。我们很多人都希望自己能快速参考和入门的方法,而不是讲故事。欢迎捐款;请在这里发送请求。

在Golang中你用sql.DB访问数据库。你可以使用此类型创建语句和事务,执行查询,并获取结果。下面的代码列出了sql.DB是一个结构体,点击 database/sql/sql.go 查看官方源码。

首先你应该知道一个sql.DB不是一个数据库的连接。它也没有映射到任何特点数据库软件的“数据库”或“模式”的概念。它是数据库的接口和数据库的抽象,它可能与本地文件不同,可以通过网络连接访问,也可以在内存和进程中访问。

sql.DB为你在幕后执行一些重要的任务:

• 通过驱动程序打开和关闭实际的底层数据库的连接。
• 它根据需要管理一个连接池,这可能是如上所述的各种各样的事情。

sql.DB抽象旨在让你不必担心如何管理对基础数据存储的并发访问。一个连接在使用它执行任务时被标记为可用,然后当它不在使用时返回到可用的池中。这样的后果之一是,如果你无法将连接释放到池中,则可能导致db.SQL打开大量连接,可能会耗尽资源(连接太多,打开的文件句柄太多,缺少可用网络端口等)。稍后我们将进一步讨论这个问题。

在创建sql.DB之后,你可以用它来查询它所代表的数据库,以及创建语句和事务。

No.2 导入数据库驱动

要使用 database/sql,你需要 database/sql 自身,以及需要使用的特定的数据库驱动。


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:尼古拉斯河马

查看原文:Go database/sql文档

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2999 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传