MCPcopy
hub / github.com/github/gh-ost / BuildQuery

Method BuildQuery

go/sql/builder.go:970–984  ·  view source on GitHub ↗

BuildQuery builds the arguments array for a DML event UPDATE query. It returns the query string, the shared arguments array, and the unique key arguments array.

(valueArgs, whereArgs []interface{})

Source from the content-addressed store, hash-verified

968// BuildQuery builds the arguments array for a DML event UPDATE query.
969// It returns the query string, the shared arguments array, and the unique key arguments array.
970func (b *DMLUpdateQueryBuilder) BuildQuery(valueArgs, whereArgs []interface{}) (string, []interface{}, error) {
971 args := make([]interface{}, 0, b.sharedColumns.Len()+b.uniqueKeyColumns.Len())
972 for _, column := range b.sharedColumns.Columns() {
973 tableOrdinal := b.tableColumns.Ordinals[column.Name]
974 arg := column.convertArg(valueArgs[tableOrdinal])
975 args = append(args, arg)
976 }
977 for _, column := range b.uniqueKeyColumns.Columns() {
978 tableOrdinal := b.tableColumns.Ordinals[column.Name]
979 arg := column.convertArg(whereArgs[tableOrdinal])
980 args = append(args, arg)
981 }
982
983 return b.preparedStatement, args, nil
984}

Callers 2

TestBuildDMLUpdateQueryFunction · 0.95

Calls 3

ColumnsMethod · 0.80
convertArgMethod · 0.80
LenMethod · 0.45

Tested by 2

TestBuildDMLUpdateQueryFunction · 0.76