lost table name with session when insert multiple Slice #1422

Closed
opened 2019-09-16 03:06:45 +00:00 by marionzheng · 0 comments
marionzheng commented 2019-09-16 03:06:45 +00:00 (Migrated from github.com)

Code:

type NightlyRate struct {
	ID int64 `xorm:"'id' not null pk BIGINT(20)" json:"id"`
}

func (NightlyRate) TableName() string {
	return "prd_nightly_rate"
}

trans := db.NewSession()
defer trans.Close()
_ = trans.Begin()

rtArr := []interface{} {
	[]*model.NightlyRate {
		{ID: 1},
		{ID: 2},
	},
	[]*model.NightlyRate {
		{ID: 3},
		{ID: 4},
	},
	[]*model.NightlyRate {
		{ID: 5},
	},
}
tableName := `prd_nightly_rate_16`
_, err := trans.Table(tableName).Insert(rtArr...)
if nil != err {
	println(err.Error())
	_ = trans.Rollback()
}

_ = trans.Commit()

Result:

time="2019/09/16 10:59:02.373 +0800" level=info msg="BEGIN TRANSACTION []" lib=xorm sql= tag=SQL
time="2019/09/16 10:59:02.374 +0800" level=info msg="INSERT INTO `prd_nightly_rate_16` (`id`) VALUES (?),(?) [1   2]" env=dev lib=xorm tag=SQL
time="2019/09/16 10:59:02.442 +0800" level=info msg="INSERT INTO `prd_nightly_rate` (`id`) VALUES (?),(?) [3   4]" env=dev lib=xorm tag=SQL
time="2019/09/16 10:59:02.508 +0800" level=info msg="INSERT INTO `prd_nightly_rate` (`id`) VALUES (?) [5]" env=dev lib=xorm tag=SQL
time="2019/09/16 10:59:02.574 +0800" level=info msg="COMMIT []" lib=xorm sql= tag=SQL
Code: ```golang type NightlyRate struct { ID int64 `xorm:"'id' not null pk BIGINT(20)" json:"id"` } func (NightlyRate) TableName() string { return "prd_nightly_rate" } trans := db.NewSession() defer trans.Close() _ = trans.Begin() rtArr := []interface{} { []*model.NightlyRate { {ID: 1}, {ID: 2}, }, []*model.NightlyRate { {ID: 3}, {ID: 4}, }, []*model.NightlyRate { {ID: 5}, }, } tableName := `prd_nightly_rate_16` _, err := trans.Table(tableName).Insert(rtArr...) if nil != err { println(err.Error()) _ = trans.Rollback() } _ = trans.Commit() ``` Result: ```log time="2019/09/16 10:59:02.373 +0800" level=info msg="BEGIN TRANSACTION []" lib=xorm sql= tag=SQL time="2019/09/16 10:59:02.374 +0800" level=info msg="INSERT INTO `prd_nightly_rate_16` (`id`) VALUES (?),(?) [1 2]" env=dev lib=xorm tag=SQL time="2019/09/16 10:59:02.442 +0800" level=info msg="INSERT INTO `prd_nightly_rate` (`id`) VALUES (?),(?) [3 4]" env=dev lib=xorm tag=SQL time="2019/09/16 10:59:02.508 +0800" level=info msg="INSERT INTO `prd_nightly_rate` (`id`) VALUES (?) [5]" env=dev lib=xorm tag=SQL time="2019/09/16 10:59:02.574 +0800" level=info msg="COMMIT []" lib=xorm sql= tag=SQL ```
Sign in to join this conversation.
No Milestone
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: xorm/xorm#1422
No description provided.