EXEC()方法执行增删改
stmt, err := db.Prepare("insert into user(name,age)values(?,?)")
if err != nil {
log.Println(err)
}
rs, err := stmt.Exec("go-test", 12)
if err != nil {
log.Println(err)
}
//我们可以获得插入的id
id, err := rs.LastInsertId()
//可以获得影响行数
affect, err := rs.RowsAffected()
Query()方法实现查
var name string
var age int
rows, err := db.Query("select name,age from user where id = ? ", 1)
if err != nil {
fmt.Println(err)
}
defer rows.Close()
for rows.Next() {
err := rows.Scan(&name, &age)
if err != nil {
fmt.Println(err)
}
}
QueryRow()方法查询单条记录
err = db.QueryRow("select name from user where id = ?", 222).Scan(&name)
处理空值
if name.Valid {
// use name.String
} else {
// value is NULL
}