# 安裝orm及Msql驅動
~~~
go get github.com/astaxie/beego/orm
go get github.com/go-sql-driver/mysql // import your used driver
~~~
# 注冊數據庫類型
```
orm.RegisterDriver("mysql", orm.DRMySQL)
```
# 連接Msql數據庫
~~~
orm.RegisterDataBase("default", "mysql", "root:root@orm_test?charset=utf8")
~~~
default為數據庫別名,這是不能更改的。如果有多個數據庫,除第一個外的可以取其他名字。
`用戶名:密碼@tcp(127.0.0.1:3306)/database_name?charset=utf8`
#### RegisterDriver
三種默認數據庫類型
~~~
// For version 1.6
orm.DRMySQL
orm.DRSqlite
orm.DRPostgres
// < 1.6
orm.DR_MySQL
orm.DR_Sqlite
orm.DR_Postgres
~~~
~~~
// 參數1 driverName
// 參數2 數據庫類型
// 這個用來設置 driverName 對應的數據庫類型
// mysql / sqlite3 / postgres 這三種是默認已經注冊過的,所以可以無需設置
orm.RegisterDriver("mysql", orm.DRMySQL)
~~~
#### RegisterDataBase
ORM 必須注冊一個別名為`default`的數據庫,作為默認使用。
ORM 使用 golang 自己的連接池
~~~
// 參數1 數據庫的別名,用來在 ORM 中切換數據庫使用
// 參數2 driverName
// 參數3 對應的鏈接字符串
orm.RegisterDataBase("default", "mysql", "root:root@/orm_test?charset=utf8")
// 參數4(可選) 設置最大空閑連接
// 參數5(可選) 設置最大數據庫連接 (go >= 1.2)
maxIdle := 30
maxConn := 30
orm.RegisterDataBase("default", "mysql", "root:root@/orm_test?charset=utf8", maxIdle, maxConn)
~~~
#### SetMaxIdleConns
根據數據庫的別名,設置數據庫的最大空閑連接
~~~
orm.SetMaxIdleConns("default", 30)
~~~
#### SetMaxOpenConns
根據數據庫的別名,設置數據庫的最大數據庫連接 (go >= 1.2)
~~~
orm.SetMaxOpenConns("default", 30)
~~~
#### 時區設置
ORM 默認使用 time.Local 本地時區
* 作用于 ORM 自動創建的時間
* 從數據庫中取回的時間轉換成 ORM 本地時間
如果需要的話,你也可以進行更改
~~~
// 設置為 UTC 時間
orm.DefaultTimeLoc = time.UTC
~~~
ORM 在進行 RegisterDataBase 的同時,會獲取數據庫使用的時區,然后在 time.Time 類型存取時做相應轉換,以匹配時間系統,從而保證時間不會出錯。
**注意:**
* 鑒于 Sqlite3 的設計,存取默認都為 UTC 時間
* 使用 go-sql-driver 驅動時,請注意參數設置
從某一版本開始,驅動默認使用 UTC 時間,而非本地時間,所以請指定時區參數或者全部以 UTC 時間存取
例如:`root:root@/orm_test?charset=utf8&loc=Asia%2FShanghai`
參見[loc](https://github.com/go-sql-driver/mysql#loc)/[parseTime](https://github.com/go-sql-driver/mysql#parsetime)
- go環境搭建
- 解決go get網絡慢的問題
- beego的安裝
- bee的安裝
- 編輯器
- go module
- 配置文件詳解
- 配置文件其他說明
- 路由方法
- 路由
- 數據校驗
- 校驗函數
- 頁面跳轉
- 獲取前端數據
- json文件的獲取
- xsrf的用法
- xsrf的防護
- srfs和json的搭配
- flash的用法
- 過濾器
- url反轉
- 各類數據的處理
- 模板函數
- 內置模板函數
- 自定義模板函數
- 模板
- 模板處理
- 模板渲染
- 視圖文件的處理
- 靜態文件
- 請求方式判斷
- 驗證碼
- 另一種方法
- 分頁類
- session
- 登錄判斷
- orm模塊
- 使用方法
- mysql的安裝
- 安裝orm及驅動
- 建立模型
- 自定義模型
- 增刪改查
- 高級查詢
- 常見問題匯總
- 代碼收藏
- 打包部署
- go build打包
- utils收藏
- 新goer容易犯的錯
- 字符串操作