博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
gorm试用
阅读量:6228 次
发布时间:2019-06-21

本文共 1692 字,大约阅读时间需要 5 分钟。

hot3.png

####gorm试用--属于

###数据库连接

db, err := gorm.Open("mysql", "root:rootpassword@/dbname?charset=utf8&parseTime=True&loc=Local")	if err != nil {		panic("连接数据库失败")	}	defer db.Close()

###创建表

if !db.HasTable(&User{}) {		db.CreateTable(&User{})	}  	if !db.HasTable(&Profile{}) {		db.CreateTable(&Profile{})	}

###准备些数据

oneuser := User{Name: "wayne"}	db.Create(&oneuser)	oneprofile := Profile{UserID: 1, Name: "wayne1"}	db.Create(&oneprofile)

###查询数据

user := &User{}db.Debug().Where(&User{Name: "wayne"}).First(&user)profile := &Profile{}db.Debug().Model(&user).Related(&profile)fmt.Println(user)fmt.Println(profile)

###整体代码

package main    import (    	"fmt"    	"github.com/jinzhu/gorm"    	_ "github.com/jinzhu/gorm/dialects/mysql"    )    func main() {    	db, err := gorm.Open("mysql", "root:rootpassword@/dbname?charset=utf8&parseTime=True&loc=Local")    	if err != nil {    		panic("连接数据库失败")    	}    	defer db.Close()    	if !db.HasTable(&User{}) {    		db.CreateTable(&User{})    	}          	if !db.HasTable(&Profile{}) {    		db.CreateTable(&Profile{})    	}    	oneuser := User{Name: "wayne"}    	db.Create(&oneuser)    	oneprofile := Profile{UserID: 1, Name: "wayne1"}    	db.Create(&oneprofile)    	user := &User{}        // 查询用户,条件为名字为wayne,将结果放到user变量里    	db.Debug().Where(&User{Name: "wayne"}).First(&user)    	profile := &Profile{}        // 依据之前查询的user为条件,查询profile,查询profile的条件为user的id    	db.Debug().Model(&user).Related(&profile)    	fmt.Println(user)    	fmt.Println(profile)    }    type User struct {    	gorm.Model    	Name string    }    type Profile struct {    	gorm.Model    	UserID int    	User   User    	Name   string    }

转载于:https://my.oschina.net/u/943306/blog/1622075

你可能感兴趣的文章
Vivado+FPGA:如何使用Debug Cores(ILA)在线调试(烧录到flash里可以直接启动)
查看>>
[Preference] How to avoid Forced Synchronous Layout or FSL to improve site preference
查看>>
【laravel5.4】php artisan migrate报错:Specified key was too long; max key length is 767 bytes
查看>>
[转]外贸出口流程图
查看>>
微信小程序onLaunch修改globalData的值
查看>>
php实现简单算法3
查看>>
打陀螺
查看>>
phpStudy中升级MySQL版本到5.7.17的方法步骤
查看>>
SQLServer BI 学习笔记
查看>>
sublim课程2 sublim编辑器的使用(敲代码的时候把这个放旁边用)
查看>>
什么是Solr
查看>>
oracle 12cR1&12cR2核心高实用性新特性
查看>>
pandas Series的sort_values()方法
查看>>
SQL SERVER CHAR ( integer_expression )各版本返回值差异的案例
查看>>
pytest文档7-pytest-html生成html报告
查看>>
java中this的N种使用方法
查看>>
Windows IIS安装php
查看>>
mingw 设置python 设置git环境变量
查看>>
linux 系统下如何进行用户之间的切换
查看>>
Socket拆包和解包
查看>>