1、必须掌握数据类型,一般来说,熟悉int、int32、int64、unit、unit8、string、bool就可以了,最简单的是记住我下面的表单:
数据类型 | ||||
go | 取值范围 | mysql | ||
时间和日期类型 | time.Time - 设置 type 为 date 时 | date | 1000-01-01至9999-12-31 | |
time.Time | * datetime | 1000-01-01 00:00:00至9999-12-31 23:59:59 | ||
字符串类型 | * string - 默认为 size 255 | * varchar(size) | 0至65536 | |
* string - 设置 type(text) 时 | * longtext | 支持4 294 967 295 | ||
布尔型 | * bool | true或false | * bool | 0或1 |
整数值类型 | int, int32 - 设置 auto 或者名称为 Id 时 | integer AUTO_INCREMENT | [-]2 147 483 648至2 147 483 647 | |
int64 - 设置 auto 或者名称为 Id 时 | bigint AUTO_INCREMENT | [-]9 223 372 036 854 775 808至9 223 372 036 854 775 807 | ||
uint, uint32 - 设置 auto 或者名称为 Id 时 | * integer unsigned AUTO_INCREMENT | 0至4 294 967 295 | ||
uint64 - 设置 auto 或者名称为 Id 时 | * bigint unsigned AUTO_INCREMENT | 0至18 446 744 073 709 551 615 | ||
byte | 等同uint8,[0,255] | tinyint unsigned | 0至255 | |
rune | 等同uint32,[0,4 294 967 295] | integer | [-]2 147 483 648至2 147 483 647 | |
* int | 根据平台,int32或int64 | * integer | [-]2 147 483 648至2 147 483 647 | |
int8 | [-128,127] | * tinyint | 支持MySQL最小的整数范围:[-]128至127 | |
int16 | [-32 768,32 767] | * smallint | 支持MySQL第三的整数范围:[-]32 768至32 767 | |
* int32 | [-2 147 483 648,2 147 483 647] | * integer | 支持MySQL第二的整数范围:[-]2 147 483 648至2 147 483 647 | |
* int64 | [-9 223 372 036 854 775 808,9 223 372 036 854 775 807] | * bigint | 支持MySQL最大的整数范围:[-]9 223 372 036 854 775 808至9 223 372 036 854 775 807 | |
* uint | 根据平台,uint32或uint64 | integer unsigned | 0至4 294 967 295 | |
* uint8 | [0,255] | * tinyint unsigned | 0至255 | |
uint16 | [0,65 535] | * smallint unsigned | 0至65 535 | |
uint32 | [0,4 294 967 295] | * integer unsigned | 0至4 294 967 295 | |
uint64 | [0,18 446 744 073 709 551 615] | * bigint unsigned | 0至18 446 744 073 709 551 615 | |
浮点数值类型 | float32 | ±3.402后支持38位小数位 | double precision | |
float64 | ±1.797后支持308位小数位 | double precision | ||
float64 - 设置 digits, decimals 时 | numeric(digits, decimals) |
3、必须掌握array、slice、map的定义、写入、遍历读出、还有一些相关的方法;
4、必须掌握函数:定义、闭包、用法;
5、掌握结构体、方法;
6、掌握接口,这是个很难的东西,懂了就可以说你已经基本可以玩了;
7、其他高级的需要细心去体验