github.com/gogf/gf/v2@v2.7.4/contrib/drivers/README.zh_CN.MD (about)

     1  # 数据库驱动程序
     2  
     3  用于gdb包的数据库驱动程序。
     4  
     5  ## 安装
     6  
     7  以 `mysql` 为例。
     8  
     9  ```shell
    10  go get -u github.com/gogf/gf/contrib/drivers/mysql/v2
    11  # 方便复制
    12  go get -u github.com/gogf/gf/contrib/drivers/clickhouse/v2
    13  go get -u github.com/gogf/gf/contrib/drivers/dm/v2
    14  go get -u github.com/gogf/gf/contrib/drivers/mssql/v2
    15  go get -u github.com/gogf/gf/contrib/drivers/oracle/v2
    16  go get -u github.com/gogf/gf/contrib/drivers/pgsql/v2
    17  go get -u github.com/gogf/gf/contrib/drivers/sqlite/v2
    18  go get -u github.com/gogf/gf/contrib/drivers/sqlitecgo/v2
    19  ```
    20  
    21  选择并将驱动程序导入到您的项目中:
    22  
    23  ```go
    24  import _ "github.com/gogf/gf/contrib/drivers/mysql/v2"
    25  ```
    26  
    27  通常在 `main.go` 的顶部导入:
    28  
    29  ```go
    30  package main
    31  
    32  import (
    33  	_ "github.com/gogf/gf/contrib/drivers/mysql/v2"
    34  
    35  	// 其他导入的包。
    36  )
    37  
    38  func main() {
    39  	// 主要逻辑。
    40  }
    41  ```
    42  
    43  ## 支持的驱动程序
    44  
    45  ### MySQL/MariaDB/TiDB
    46  
    47  ```go
    48  import _ "github.com/gogf/gf/contrib/drivers/mysql/v2"
    49  ```
    50  
    51  ### SQLite
    52  
    53  ```go
    54  import _ "github.com/gogf/gf/contrib/drivers/sqlite/v2"
    55  ```
    56  
    57  #### cgo 版本
    58  
    59  32位Windows请使用cgo版本
    60  
    61  ```go
    62  import _ "github.com/gogf/gf/contrib/drivers/sqlitecgo/v2"
    63  ```
    64  
    65  ### PostgreSQL
    66  
    67  ```go
    68  import _ "github.com/gogf/gf/contrib/drivers/pgsql/v2"
    69  ```
    70  
    71  注意:
    72  
    73  - 不支持 `Replace` 功能。
    74  
    75  ### SQL Server
    76  
    77  ```go
    78  import _ "github.com/gogf/gf/contrib/drivers/mssql/v2"
    79  ```
    80  
    81  注意:
    82  
    83  - 不支持 `Replace` 功能。
    84  - 不支持 `LastInsertId`。
    85  - 仅支持服务器版本 >= `SQL Server2005`
    86  - 仅支持 datetime2 和 datetimeoffset 类型来自动处理 created_at/updated_at/deleted_at 列,因为 datetime 类型在将列值作为字符串传递时不支持微秒精度。
    87  
    88  ### Oracle
    89  
    90  ```go
    91  import _ "github.com/gogf/gf/contrib/drivers/oracle/v2"
    92  ```
    93  
    94  注意:
    95  
    96  - 不支持 `Replace` 功能。
    97  - 不支持 `LastInsertId`。
    98  
    99  ### ClickHouse
   100  
   101  ```go
   102  import _ "github.com/gogf/gf/contrib/drivers/clickhouse/v2"
   103  ```
   104  
   105  注意:
   106  
   107  - 不支持 `InsertIgnore/InsertGetId` 功能。
   108  - 不支持 `Save/Replace` 功能。
   109  - 不支持 `Transaction` 功能。
   110  - 不支持 `RowsAffected` 功能。
   111  
   112  ### DM
   113  
   114  ```go
   115  import _ "github.com/gogf/gf/contrib/drivers/dm/v2"
   116  ```
   117  
   118  注意:
   119  
   120  - 不支持 `Replace` 功能。
   121  
   122  ## 自定义驱动程序
   123  
   124  自定义驱动程序非常快速和简单,您可以参考当前驱动程序的源代码来进行开发。
   125  如果您有关于支持新驱动程序的PR(Pull Request),我们将非常感激地接受您的提交到当前仓库。