#include <iostream> using namespace std; int main() { using cullptr = const unsigned long long *; //C++11新变量类型long long;constexpr unsigned long long * 为非法 typedef wchar_t * wchptr; /* 使用using或typedef声明的类型别名的变量实例初始化时,不同类型变量不可使用","写在同一行 如://
redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set --有序集合)和hash(哈希类型).这些数据类型都支持push/pop.add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的. 一般用缓存对象时,通过序列化存储,在实体类新加字段的时候,反序列化成对象是新加字段会为空,这个问题很容易被忽略,如果自己没有做好处理,上线会有大
type User struct{ ID uint `gorm:"primary_key"` Name string Age int Birthday time.Time AddTime time.Time} 连接数据库db, err := gorm.Open("mysql", "用户名:密码@tcp(地址:端口号)/数据库名") if err != nil { panic("连接数据库失败") } 创建表 db.Singul
之前咱们学习过原生的Go连接MYSQL的方法,使用Go自带的"database/sql"数据库连接api,"github.com/go-sql-driver/mysql"MYSQL驱动,通过比较原生的写法去写sql和处理事务.目前开源界也有很多封装好的orm操作框架,帮我们简省一些重复的操作,提高代码可读性.gorm就是这样的一款作品,我们来学习一下gorm的操作流程. 安装 go get -u github.com/jinzhu/gorm 数据库连接 要连接到数据
这个数据库的定义蛮全的,先作个记录. package main import ( "time" "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/mysql" ) type User struct { gorm.Model Birthday time.Time Age int Name string `gorm:"size:255"` // string默认
CRUD通常指数据库的增删改查操作,本文详细介绍了如何使用GORM实现创建.查询.更新和删除操作. CRUD CRUD通常指数据库的增删改查操作,本文详细介绍了如何使用GORM实现创建.查询.更新和删除操作. 创建 创建记录 首先定义模型: type User struct { ID int64 Name string Age int64 } 使用使用NewRecord()查询主键是否存在,主键为空使用Create()创建记录: user := User{Name: "q1mi", A