mirror of
https://github.com/tangpanqing/aorm.git
synced 2025-11-02 20:04:01 +08:00
support sqlite3
This commit is contained in:
@@ -187,6 +187,10 @@ func (mm *MigrateExecutor) getColumnsFromDb(dbName string, tableName string) []C
|
|||||||
if columnsFromDb[j].DataType.String == "double precision" {
|
if columnsFromDb[j].DataType.String == "double precision" {
|
||||||
columnsFromDb[j].DataType = null.StringFrom("float")
|
columnsFromDb[j].DataType = null.StringFrom("float")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if columnsFromDb[j].DataType.String == "timestamp without time zone" {
|
||||||
|
columnsFromDb[j].DataType = null.StringFrom("timestamp")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return columnsFromDb
|
return columnsFromDb
|
||||||
@@ -465,6 +469,7 @@ func getDataType(fieldType string, fieldMap map[string]string) string {
|
|||||||
}
|
}
|
||||||
if "Time" == fieldType {
|
if "Time" == fieldType {
|
||||||
DataType = "date"
|
DataType = "date"
|
||||||
|
DataType = "timestamp"
|
||||||
}
|
}
|
||||||
if "Float" == fieldType {
|
if "Float" == fieldType {
|
||||||
DataType = "float"
|
DataType = "float"
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import (
|
|||||||
"github.com/tangpanqing/aorm/model"
|
"github.com/tangpanqing/aorm/model"
|
||||||
"github.com/tangpanqing/aorm/null"
|
"github.com/tangpanqing/aorm/null"
|
||||||
"testing"
|
"testing"
|
||||||
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
type Article struct {
|
type Article struct {
|
||||||
@@ -36,7 +37,7 @@ type Person struct {
|
|||||||
Sex null.Bool `aorm:"index;comment:性别" json:"sex"`
|
Sex null.Bool `aorm:"index;comment:性别" json:"sex"`
|
||||||
Age null.Int `aorm:"index;comment:年龄" json:"age"`
|
Age null.Int `aorm:"index;comment:年龄" json:"age"`
|
||||||
Type null.Int `aorm:"index;comment:类型" json:"type"`
|
Type null.Int `aorm:"index;comment:类型" json:"type"`
|
||||||
CreateTime null.Int `aorm:"comment:创建时间" json:"createTime"`
|
CreateTime null.Time `aorm:"comment:创建时间" json:"createTime"`
|
||||||
Money null.Float `aorm:"comment:金额" json:"money"`
|
Money null.Float `aorm:"comment:金额" json:"money"`
|
||||||
Test null.Float `aorm:"type:double;comment:测试" json:"test"`
|
Test null.Float `aorm:"type:double;comment:测试" json:"test"`
|
||||||
}
|
}
|
||||||
@@ -52,7 +53,7 @@ type PersonWithArticleCount struct {
|
|||||||
Sex null.Bool `aorm:"index;comment:性别" json:"sex"`
|
Sex null.Bool `aorm:"index;comment:性别" json:"sex"`
|
||||||
Age null.Int `aorm:"index;comment:年龄" json:"age"`
|
Age null.Int `aorm:"index;comment:年龄" json:"age"`
|
||||||
Type null.Int `aorm:"index;comment:类型" json:"type"`
|
Type null.Int `aorm:"index;comment:类型" json:"type"`
|
||||||
CreateTime null.Int `aorm:"comment:创建时间" json:"createTime"`
|
CreateTime null.Time `aorm:"comment:创建时间" json:"createTime"`
|
||||||
Money null.Float `aorm:"comment:金额" json:"money"`
|
Money null.Float `aorm:"comment:金额" json:"money"`
|
||||||
Test null.Float `aorm:"type:double;comment:测试" json:"test"`
|
Test null.Float `aorm:"type:double;comment:测试" json:"test"`
|
||||||
ArticleCount null.Int `aorm:"comment:文章数量" json:"articleCount"`
|
ArticleCount null.Int `aorm:"comment:文章数量" json:"articleCount"`
|
||||||
@@ -109,7 +110,7 @@ func TestAll(t *testing.T) {
|
|||||||
testExec(dbItem.DriverName, dbItem.DbLink)
|
testExec(dbItem.DriverName, dbItem.DbLink)
|
||||||
|
|
||||||
testTransaction(dbItem.DriverName, dbItem.DbLink)
|
testTransaction(dbItem.DriverName, dbItem.DbLink)
|
||||||
testTruncate(dbItem.DriverName, dbItem.DbLink)
|
//testTruncate(dbItem.DriverName, dbItem.DbLink)
|
||||||
testHelper(dbItem.DriverName, dbItem.DbLink)
|
testHelper(dbItem.DriverName, dbItem.DbLink)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -192,7 +193,7 @@ func testInsert(driver string, db *sql.DB) int64 {
|
|||||||
Sex: null.BoolFrom(false),
|
Sex: null.BoolFrom(false),
|
||||||
Age: null.IntFrom(18),
|
Age: null.IntFrom(18),
|
||||||
Type: null.IntFrom(0),
|
Type: null.IntFrom(0),
|
||||||
CreateTime: null.IntFrom(2),
|
CreateTime: null.TimeFrom(time.Now()),
|
||||||
Money: null.FloatFrom(1),
|
Money: null.FloatFrom(1),
|
||||||
Test: null.FloatFrom(2),
|
Test: null.FloatFrom(2),
|
||||||
}
|
}
|
||||||
@@ -247,7 +248,7 @@ func testInsertBatch(driver string, db *sql.DB) int64 {
|
|||||||
Sex: null.BoolFrom(false),
|
Sex: null.BoolFrom(false),
|
||||||
Age: null.IntFrom(18),
|
Age: null.IntFrom(18),
|
||||||
Type: null.IntFrom(0),
|
Type: null.IntFrom(0),
|
||||||
CreateTime: null.IntFrom(1111),
|
CreateTime: null.TimeFrom(time.Now()),
|
||||||
Money: null.FloatFrom(100.15),
|
Money: null.FloatFrom(100.15),
|
||||||
Test: null.FloatFrom(200.15987654321987654321),
|
Test: null.FloatFrom(200.15987654321987654321),
|
||||||
})
|
})
|
||||||
@@ -257,7 +258,7 @@ func testInsertBatch(driver string, db *sql.DB) int64 {
|
|||||||
Sex: null.BoolFrom(true),
|
Sex: null.BoolFrom(true),
|
||||||
Age: null.IntFrom(18),
|
Age: null.IntFrom(18),
|
||||||
Type: null.IntFrom(0),
|
Type: null.IntFrom(0),
|
||||||
CreateTime: null.IntFrom(1111),
|
CreateTime: null.TimeFrom(time.Now()),
|
||||||
Money: null.FloatFrom(100.15),
|
Money: null.FloatFrom(100.15),
|
||||||
Test: null.FloatFrom(200.15987654321987654321),
|
Test: null.FloatFrom(200.15987654321987654321),
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user