fixing build bulk insert query
This commit is contained in:
@@ -179,6 +179,11 @@ type InsertData struct {
|
|||||||
JsonValues map[string]interface{} `json:"json_values,omitempty"`
|
JsonValues map[string]interface{} `json:"json_values,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type InsertBulkData struct {
|
||||||
|
Columns []string `json:"columns"`
|
||||||
|
Values [][]interface{} `json:"values"`
|
||||||
|
}
|
||||||
|
|
||||||
// QueryBuilder builds SQL queries from dynamic filters using squirrel
|
// QueryBuilder builds SQL queries from dynamic filters using squirrel
|
||||||
type QueryBuilder struct {
|
type QueryBuilder struct {
|
||||||
dbType DBType
|
dbType DBType
|
||||||
@@ -1713,7 +1718,7 @@ func (qb *QueryBuilder) BuildInsertQuery(table string, data InsertData, returnin
|
|||||||
return sql, args, nil
|
return sql, args, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (qb *QueryBuilder) BuildBulkInsertQuery(table string, data InsertData, returningColumns ...string) (string, []interface{}, error) {
|
func (qb *QueryBuilder) BuildBulkInsertQuery(table string, data InsertBulkData, returningColumns ...string) (string, []interface{}, error) {
|
||||||
// Validate columns
|
// Validate columns
|
||||||
for _, col := range data.Columns {
|
for _, col := range data.Columns {
|
||||||
if qb.allowedColumns != nil && !qb.allowedColumns[col] {
|
if qb.allowedColumns != nil && !qb.allowedColumns[col] {
|
||||||
@@ -1726,8 +1731,7 @@ func (qb *QueryBuilder) BuildBulkInsertQuery(table string, data InsertData, retu
|
|||||||
|
|
||||||
// loop insert data values
|
// loop insert data values
|
||||||
for _, item := range data.Values {
|
for _, item := range data.Values {
|
||||||
log.Printf("%s", item)
|
insert = insert.Values(item...)
|
||||||
insert.Values(item)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(returningColumns) > 0 {
|
if len(returningColumns) > 0 {
|
||||||
|
|||||||
Reference in New Issue
Block a user