Golang 获取MySQL表元信息
本文介绍Golang如何操作数据库,并通过获取Mysql表元信息进行实例演示。
1. Golang 操作DBMS
Golang 通过标准database/sql包实现了对关系型数据库很好的支持,如MySQL, MS SQL Server, Oracle 和 Postgres,当然NoSql也没有问题,如MongoDB、Redis。
使用Golang标准库可以很容易与Mysql交互,其他数据库也一样,可以参加Golang数据库驱动列表。
SQL标准库提供通用接口及常用方法用于访问或操作数据库。数据库包包括连接池,正确使用可确保线程安全。数据库包必须和具体数据库驱动包一起使用。
2. 连接Mysql
连接Mysql需要使用标准SQL包和Mysql驱动,Mysql驱动包实现标准包方法和接口。一般实现SQl标准包通常通过标准包暴露驱动接口,入口点代码在SQL驱动的Go文件。
SQL包是存在于Go标准库中的标准SQL包。因为init()函数是在任何其他函数之前执行的,所以可以肯定的是,只要在代码中包含了MySQL包,则Mysql驱动会被自动注册并通过标准SQL包调用。
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
)
这里下划线_表示载入包但不直接使用,我们通过标准SQL包使用。没有下划线,编译器会提示导入没有使用错误。
加载包的动作即使是静态方式,但包中的init()方法仍会执行,初始化方法会注册Mysql驱动给标准包,从而使用对标准包的方法调用转为对具