gome是什么牌子手机

gorm安装

gorm框架是go的一个数据库连接及交互框架,一般用于连接关系型数据库。

安装gorm,使用命令安装:

goget-u-vgithub.com/jinzhu/gorm

连接数据库

构建连接的目标为数据库中某一个库,同大多数框架一样使用url进行连接,url基本格式:

用户名:密码@连接方式(ip:port)/数据库名?参数

参数描述:

用户名:连接数据库用户名

密码:连接数据库密码

连接方式:或称为访问协议,一般为tcp

ip:数据库所在服务器地址

port:数据库监听端口

数据库名:数据库中对应要连接库名

参数:附加数据库参数,根据数据库不同内容不同

确定url后,就可以调用gorm中参数进行连接数据库操作:

//调用Open函数连接数据库,第一个参数为对应数据库名称,这里以mysql为例,mariadb也可以使用mysql作为名称。第二个参数为刚才设置好的url。//得到两个结果:第一个为连接后对象,用于操作数据库对象;第二个为错误信息,连接失败会返回内容,连接成功返回nil,空。dbConn,err:=gorm.Open("mysql","root:123456@tcp(127.0.0.1:3306)/test1?charset=utf8&parseTime=True&loc=Local")iferr!=nil{panic(err)}别忘记import语句导入包:

//gorm包"github.com/jinzhu/gorm"//数据库方言,因为不会直接使用,所以前面要加下划线_"github.com/jinzhu/gorm/dialects/mysql"操作完数据库后不要忘了关闭连接:

dbConn.Close()表操作

创建表

gorm创建表基于结构体,所以创建表前要先用结构体规划表结构,这里简单写一个结构体,创建表时默认结构体第一个字段作为主键:

//创建结构体映射表结构typeUserstruct{IdintNamestringDatastring}写好结构体后,调用创建表语句直接按照结构体结构创建表:

//直接创建表dbConn.CreateTable(&User{})//自定义表名创建表dbConn.Table("user").Create(&User{})当直接创建表时,表名遵循规范:

1、大写字母全部小写,所有位于中间的大写字母都变成小写字母并且前面加下划线,例如UserInfo结构体创建为表名称为user_infos。

2、上面最后的那个s是因为直接创建表时,名称最后都会加上一个s。所以上面结构体User创建表后名称为users。

删除表

//按照结构体删除,即默认表名dbConn.DropTable(&User{})//按照表名删除,可为自定义的表名dbConn.DropTable("user")增删改查

插入数据

插入数据,插入数据方法结构使用Create方法:

//默认表名插入数据dbConn.Create(&User{Id:1,Name:"awda",Data:"ssss"})//自定义表名插入数据dbConn.Table("user").Create(&User{Id:1,Name:"awda",Data:"ssss"})查询数据

查询第一条找到的数据,使用First,该方法返回值仍然为db对象,所以接收数据时我们需要先定义一个对应表结构的结构体接收数据:

//定义user的结构体对象varuserUser//还是两种操作方式//其中&user代表上面定义的结构体对象用于接收数据,使用时通过上面变量直接操作//默认查询的话相当于查询第一条数据dbConn.First(&user)dbConn.Table("user").First(&user)//输出内容fmt.Print(user.Id)//带条件查询//只传入一个参数时代表默认查询主键dbConn.First(&user,1)dbConn.Table("user").First(&user,1)//也可以指定查询条件,条件书写格式与普通sql语句并无不同,其中?代表占位符,First方法是动态参数方法,可以传入任意参数,将按照?占位符逐个传入。dbConn.First(&user,"name=?andid=?","awda",1)dbConn.Table("user").First(&user,"name=?andid=?","awda",1)有First就有Last,同First调用格式一致。

批量查询,批量查询使用Find方法,其余参数结构同First或Last相同,只不过传参时一般传入数组参数,当然,First或Last方法也可以传入数组参数,但得到的数组只有一个数据,批量查询操作:

本文来自“宁七月”用户投稿,该文观点仅代表作者本人,不代表华夏信息网立场,本站不对文章中的任何观点负责,内容版权归原作者所有、内容只用于提供信息阅读,无任何商业用途。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站(文章、内容、图片、音频、视频)有涉嫌抄袭侵权/违法违规的内容,请发送邮件至1470280261#qq.com举报,一经查实,本站将立刻删除、维护您的正当权益。如若转载,请注明出处:http://www.xxxwhg.com/zh/103334.html

上一篇 2023-04-03 16:00:03
下一篇 2023-04-03 08:30:02

相关推荐

  • 苹果手机主板序列号(苹果手机主板序列号以什么字母开头)

    苹果手机怎么从主板分辨颜色白色黑色如果仅从主板是不能区分手机颜色的!但是单单区分8G和16G或32G还是可以看主板的,16G主板上方的屏蔽罩是黑色的,8G的则是白色的!还有就是可以看主板上的硬盘,8G与16G、32G都是可以看的出来,颜色无从区分!不过如果可以开机的话,只要连

    2023-10-01 20:48:31
    289
  • 战区2为什么会闪退(战区为什么老是闪退)

    为什么战区2闪退原因分析。  电脑配置  1、很多玩家在进行游戏时,可能会因为电脑配置不足导致出现闪退的问题。  2、因此玩家在进行游戏之前,需要检查一下电脑的配置是否足够。  3、下面给大家提供一些配置推荐来进行参考。  显卡驱动  1、如果玩家的显卡驱动没

    2023-10-01 07:41:51
    364
  • 魅蓝手机死机解决方法(手机白屏死机解决方法)

    魅蓝5手机经常不能开机解决办法:方法一1、前往魅族官网下载最新版固件;2、长按电源键以及音量加键,手机震动后松手;3、此时将手机连接到电脑,会识别出一个存储盘,将固件复制到存储盘里,点击升级就可以正常使用了。方法二携带手机、发票和保修卡,到当地的魅族授权服务体

    2023-09-23 11:00:49
    245
  • vivo手机换了主板后会怎样(vivo手机主板换了手机会变快吗)(vivo手机换了屏幕指纹不能用怎么回事)

    vivo手机主板换了手机会变快吗这个是不一定会变快的。正常来说手机的主板是没有人去修的,因为修主板的费用很高,而且修好之后质量并不一定好,很多主板并不是虚,而是直接更换了一块新的,因为维修人员不一定会修,他就建议你换一块新的新的主板价格很高,所以还不如直接买块

    2023-09-08 09:21:22
    725