MCPcopy Create free account
hub / github.com/pingcap/tidb / BuildDeleteSQL

Function BuildDeleteSQL

pkg/ttl/sqlbuilder/sql.go:459–482  ·  view source on GitHub ↗

BuildDeleteSQL builds a delete SQL

(tbl *cache.PhysicalTable, rows [][]types.Datum, expire time.Time)

Source from the content-addressed store, hash-verified

457
458// BuildDeleteSQL builds a delete SQL
459func BuildDeleteSQL(tbl *cache.PhysicalTable, rows [][]types.Datum, expire time.Time) (string, error) {
460 if len(rows) == 0 {
461 return "", errors.New("Cannot build delete SQL with empty rows")
462 }
463
464 b := NewSQLBuilder(tbl)
465 if err := b.WriteDelete(); err != nil {
466 return "", err
467 }
468
469 if err := b.WriteInCondition(tbl.KeyColumns, rows...); err != nil {
470 return "", err
471 }
472
473 if err := b.WriteExpireCondition(expire); err != nil {
474 return "", err
475 }
476
477 if err := b.WriteLimit(len(rows)); err != nil {
478 return "", err
479 }
480
481 return b.Build()
482}

Callers 3

TestBuildDeleteSQLFunction · 0.92
doDeleteMethod · 0.92
deleteExpiredRowsMethod · 0.92

Calls 7

WriteDeleteMethod · 0.95
WriteInConditionMethod · 0.95
WriteExpireConditionMethod · 0.95
WriteLimitMethod · 0.95
BuildMethod · 0.95
NewSQLBuilderFunction · 0.85
NewMethod · 0.65

Tested by 1

TestBuildDeleteSQLFunction · 0.74

Used in the wild real call sites across dependent graphs

searching dependent graphs…