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{})
| 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. |
| 970 | func (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 | } |