当前位置: 首页 > news >正文

Golang Gorm 连接数据库

连接数据库


为了连接数据库,你首先要导入数据库驱动程序。例如:

import _ "github.com/go-sql-driver/mysql"import ("gorm.io/driver/mysql""gorm.io/gorm"
)
GORM 已经包含了一些驱动程序,为了方便的去记住它们的导入路径,你可以像下面这样导入
mysql 驱动程序
import _ "github.com/jinzhu/gorm/dialects/mysql"
// import _ "github.com/jinzhu/gorm/dialects/postgres"
// import _ "github.com/jinzhu/gorm/dialects/sqlite"
// import _ "github.com/jinzhu/gorm/dialects/mssql"

 

支持的数据库


 MySQL

注意: 为了正确的处理 time.Time ,你需要包含 parseTime 作为参数。 (More supported parameters)

import ("github.com/jinzhu/gorm"_ "github.com/jinzhu/gorm/dialects/mysql"
)func main() {db, err := gorm.Open("mysql", "user:password@/dbname?charset=utf8&parseTime=Tr
ue&loc=Local")defer db.Close()
}
PostgreSQL
import ("github.com/jinzhu/gorm"_ "github.com/jinzhu/gorm/dialects/postgres"
)func main() {db, err := gorm.Open("postgres", "host=myhost port=myport user=gorm dbname=gorm password=mypassword")defer db.Close()
}
Sqlite3
import (
"github.com/jinzhu/gorm"
_ "github.com/jinzhu/gorm/dialects/sqlite"
)func main() {db, err := gorm.Open("sqlite3", "/tmp/gorm.db")defer db.Close()
}

 

SQL Server


Get started with SQL Server,它可以通过 Docker 运行在你的 MacLinux 上。

import ("github.com/jinzhu/gorm"_ "github.com/jinzhu/gorm/dialects/mssql"
)
func main() {db, err := gorm.Open("mssql", "sqlserver://username:password@localhost:1433?da
tabase=dbname")defer db.Close()
}

 

不支持的数据库


GORM 官方支持以上四种数据库, 你可以为不支持的数据库编写支持,参考 GORM Dialects

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • LogBack的日志报错解决办法 org.xml.sax.SAXNotRecognizedException
  • 黑客(网络安全)技术——高效自学1.0
  • Qt中对Udp数据打包发送和接收
  • 已知CSIDL常量值,求其对应路径。
  • ImportError: cannot import name ‘HTTPClientFactory‘ from ‘twisted.web.client‘
  • k8s、数据存储
  • 【数据结构】Lambda
  • 【C++】单例模式
  • 9 mysql调优
  • 大数据毕业设计选题推荐-智慧消防大数据平台-Hadoop-Spark-Hive
  • 带你走进Cflow (三)·控制符号类型分析
  • el-table 多表格弹窗嵌套数据显示异常错乱问题
  • asp.net core mvc之 视图
  • 【 云原生 | K8S 】kubectl 详解
  • ChatGPT Plus的Vision升级是一个改变游戏规则的创举
  • ----------
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • CEF与代理
  • Elasticsearch 参考指南(升级前重新索引)
  • ES学习笔记(10)--ES6中的函数和数组补漏
  • Flannel解读
  • iOS帅气加载动画、通知视图、红包助手、引导页、导航栏、朋友圈、小游戏等效果源码...
  • Java 最常见的 200+ 面试题:面试必备
  • JavaScript设计模式系列一:工厂模式
  • JavaWeb(学习笔记二)
  • JDK 6和JDK 7中的substring()方法
  • js数组之filter
  • Laravel 菜鸟晋级之路
  • Object.assign方法不能实现深复制
  • PV统计优化设计
  • SegmentFault 技术周刊 Vol.27 - Git 学习宝典:程序员走江湖必备
  • supervisor 永不挂掉的进程 安装以及使用
  • 复习Javascript专题(四):js中的深浅拷贝
  • 紧急通知:《观止-微软》请在经管柜购买!
  • 世界编程语言排行榜2008年06月(ActionScript 挺进20强)
  • 我的zsh配置, 2019最新方案
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • #微信小程序:微信小程序常见的配置传值
  • $L^p$ 调和函数恒为零
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (14)目标检测_SSD训练代码基于pytorch搭建代码
  • (附源码)ssm高校志愿者服务系统 毕业设计 011648
  • (三)Pytorch快速搭建卷积神经网络模型实现手写数字识别(代码+详细注解)
  • (四)鸿鹄云架构一服务注册中心
  • (一)认识微服务
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • *算法训练(leetcode)第四十五天 | 101. 孤岛的总面积、102. 沉没孤岛、103. 水流问题、104. 建造最大岛屿
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .Net 6.0--通用帮助类--FileHelper
  • .NET 8.0 发布到 IIS
  • .net core 连接数据库,通过数据库生成Modell
  • .NET中分布式服务
  • [1] 平面(Plane)图形的生成算法
  • [20171101]rman to destination.txt