-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdb_models_test.go
86 lines (81 loc) · 2.07 KB
/
db_models_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
package utils
import (
"fmt"
"testing"
)
//初使连接信息
var config = DBConfig{
Host: "localhost",
Port: 3308,
Name: "root",
Pass: "123456",
DBName: "kindled",
Charset: "utf8mb4",
}
var (
MasterDB Modeler //定义一个查询接口
)
func initMysql() {
db := InitDB(config) //获取数据库连接对象
model := NewDB(db) //实例model
MasterDB = model
}
/*
CREATE TABLE `book` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`book_name` varchar(64) COLLATE utf8mb4_bin NOT NULL COMMENT '名称',
`book_author` varchar(125) COLLATE utf8mb4_bin NOT NULL COMMENT '作者',
`book_province` varchar(25) COLLATE utf8mb4_bin NOT NULL COMMENT '省',
`created_at` datetime DEFAULT NULL COMMENT '创建时间 ',
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间 ',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='书表';
*/
func TestModelS_Find(t *testing.T) {
ls, err := MasterDB.Find("select * from book")
if err != nil {
t.Error(err)
}
for f, item := range ls {
fmt.Println(f, item)
}
}
func TestModelS_First(t *testing.T) {
ls, err := MasterDB.First("select * from book where id = ?", 1)
if err != nil {
t.Error(err)
}
for f, item := range ls {
fmt.Println(f, item)
}
}
func TestModelS_Pluck(t *testing.T) {
ls, err := MasterDB.Pluck("select * from book where id = ?", "book_name", 3)
if err != nil {
t.Error(err)
}
for f, item := range ls {
fmt.Println(f, item)
}
}
func TestModelS_Insert(t *testing.T) {
ls, err := MasterDB.Insert("insert into book set book_name=?, book_author=?, book_province=?", "论语", "孔子", "山东")
if err != nil {
t.Error(err)
}
fmt.Println(ls)
}
func TestModelS_Update(t *testing.T) {
ls, err := MasterDB.Update("update book set book_name=? where id=?", "国学-论语", 3)
if err != nil {
t.Error(err)
}
fmt.Println(ls)
}
func TestModelS_Delete(t *testing.T) {
ls, err := MasterDB.Delete("delete from book where id = ?", 1)
if err != nil {
t.Error(err)
}
fmt.Println(ls)
}