| 733 | } |
| 734 | |
| 735 | func (d *dbBase) UpdateSQL(setNames []string, pkName string, mi *models.ModelInfo) string { |
| 736 | buf := buffers.Get() |
| 737 | defer buffers.Put(buf) |
| 738 | |
| 739 | Q := d.ins.TableQuote() |
| 740 | |
| 741 | _, _ = buf.WriteString("UPDATE ") |
| 742 | _, _ = buf.WriteString(Q) |
| 743 | _, _ = buf.WriteString(mi.Table) |
| 744 | _, _ = buf.WriteString(Q) |
| 745 | _, _ = buf.WriteString(" SET ") |
| 746 | |
| 747 | for i, name := range setNames { |
| 748 | if i > 0 { |
| 749 | _, _ = buf.WriteString(", ") |
| 750 | } |
| 751 | _, _ = buf.WriteString(Q) |
| 752 | _, _ = buf.WriteString(name) |
| 753 | _, _ = buf.WriteString(Q) |
| 754 | _, _ = buf.WriteString(" = ?") |
| 755 | } |
| 756 | |
| 757 | _, _ = buf.WriteString(" WHERE ") |
| 758 | _, _ = buf.WriteString(Q) |
| 759 | _, _ = buf.WriteString(pkName) |
| 760 | _, _ = buf.WriteString(Q) |
| 761 | _, _ = buf.WriteString(" = ?") |
| 762 | |
| 763 | query := buf.String() |
| 764 | d.ins.ReplaceMarks(&query) |
| 765 | |
| 766 | return query |
| 767 | } |
| 768 | |
| 769 | // Delete execute delete sql dbQuerier with given struct reflect.Value. |
| 770 | // delete index is pk. |