database/sql
包可以使用原生的sql语句
使用原生的SQL语句,虽然没有使用别人封装好的SQL方法来得方便,快捷
但是避免了很多莫名奇妙的bug的出现,当然,自己用得不好也会出很多bug
代码示例
数据库名称golangsql
表结构
| temp2 | CREATE TABLE `temp2` ( `id` int(11) NOT NULL AUTO_INCREMENT, `uid` int(11) DEFAULT NULL, `pid` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 |
示例代码
package main import ( "fmt" "database/sql" _ "github.com/go-sql-driver/mysql" ) func main() { var pid int db, err := sql.Open("mysql", "root:123456@tcp(127.0.0.1:3306)/golangsql") if err != nil { fmt.Println(err) fmt.Println("Open err") return } defer db.Close() err = db.Ping() if err != nil { fmt.Println("Ping err") return } uid_temp := 1 s := fmt.Sprintf("SELECT pid FROM temp2 WHERE uid = %d", uid_temp) rows, err := db.Query(s) if err != nil { fmt.Println("Query Err") fmt.Println(err) } defer rows.Close() for rows.Next() { err := rows.Scan(&pid) if err != nil { fmt.Println("Scan Error") fmt.Println(err) } fmt.Println(pid) } }
[dm href=’https://segmentfault.com/a/1190000003036452′]参考地址[/dm]