You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: asequencemulti.xo.go
    path of file: ./repos/xo/_examples/a_bit_of_everything/oracle
    
    the code of the file until where you have to start completion: package oracle

// Code generated by xo. DO NOT EDIT.

import (
	"context"
	"database/sql"
)

// ASequenceMulti represents a row from 'a_bit_of_everything.a_sequence_multi'.
type ASequenceMulti struct {
	ASeq  int            `json:"a_seq"`  // a_seq
	AText sql.NullString `json:"a_text"` // a_text
	// xo fields
	_exists, _deleted bool
}

// Exists returns true when the [ASequenceMulti] exists in the datab
    
func (asm *ASequenceMulti) Update(ctx context.Context, db DB) error {
	switch {
	case !asm._exists: // doesn't exist
		return logerror(&ErrUpdateFailed{ErrDoesNotExist})
	case asm._deleted: // deleted
		return logerror(&ErrUpdateFailed{ErrMarkedForDeletion})
	}
	// update with primary key
	const sqlstr = `UPDATE a_bit_of_everything.a_sequence_multi SET ` +
		`a_text = :1 ` +
		`WHERE a_seq = :2`
	// run
	logf(sqlstr, asm.AText, asm.ASeq)
	if _, err := db.ExecContext(ctx, sqlstr, asm.AText, asm.ASeq); err != nil {
		return logerror(err)
	}
	return nil
}