参考http://go-database-sql.org/overview.html
准备
建立数据库school和四张表并插入一些数据
--学生表
CREATE TABLE `Student`(
`s_id` VARCHAR(20),
`s_name` VARCHAR(20) NOT NULL DEFAULT '',
`s_birth` VARCHAR(20) NOT NULL DEFAULT '',
`s_sex` VARCHAR(10) NOT NULL DEFAULT '',
PRIMARY KEY(`s_id`)
);
--课程表
CREATE TABLE `Course`(
`c_id` VARCHAR(20),
`c_name` VARCHAR(20) NOT NULL DEFAULT '',
`t_id` VARCHAR(20) NOT NULL,
PRIMARY KEY(`c_id`)
);
--教师表
CREATE TABLE `Teacher`(
`t_id` VARCHAR(20),
`t_name` VARCHAR(20) NOT NULL DEFAULT '',
PRIMARY KEY(`t_id`)
);
--成绩表
CREATE TABLE `Score`(
`s_id` VARCHAR(20),
`c_id` VARCHAR(20),
`s_score` INT(3),
PRIMARY KEY(`s_id`,`c_id`)
);
登录mysql
import _ "github.com/go-sql-driver/mysql"
func main() {
//open函数仅仅填入参数,不马上建立连接。后面query和exec时建立连接
db, err := sql.Open("mysql","user:password@tcp(127.0.0.1:3306)/school") //登录到数据库school中
if err != nil {
log.Fatal(err)
}
defer db.Close() //避免频繁连接断