MCPcopy Create free account
hub / github.com/Shopify/ghostferry / buildStringMapForWhere

Function buildStringMapForWhere

dml_events.go:364–384  ·  view source on GitHub ↗
(columns []schema.TableColumn, values []interface{})

Source from the content-addressed store, hash-verified

362}
363
364func buildStringMapForWhere(columns []schema.TableColumn, values []interface{}) string {
365 var buffer []byte
366
367 for i, value := range values {
368 if i > 0 {
369 buffer = append(buffer, " AND "...)
370 }
371
372 buffer = append(buffer, QuoteField(columns[i].Name)...)
373
374 if isNilValue(value) {
375 // "WHERE value = NULL" will never match rows.
376 buffer = append(buffer, " IS NULL"...)
377 } else {
378 buffer = append(buffer, '=')
379 buffer = appendEscapedValue(buffer, value, columns[i])
380 }
381 }
382
383 return string(buffer)
384}
385
386func buildStringMapForSet(columns []schema.TableColumn, values []interface{}) string {
387 var buffer []byte

Callers 2

AsSQLStringMethod · 0.85
AsSQLStringMethod · 0.85

Calls 3

QuoteFieldFunction · 0.85
isNilValueFunction · 0.85
appendEscapedValueFunction · 0.85

Tested by

no test coverage detected