code: func DivUintWithInt(a uint64, b int64) (uint64, error) {
  	if b < 0 {
  		if a != 0 && uint64(-b) <= a {
  			return 0, ErrOverflow.GenWithStackByArgs("BIGINT UNSIGNED", fmt.Sprintf("(%d, %d)", a, b))
  		}
  
  		return 0, nil
  	}
  
  	return a / uint64(b), nil
  }
docs: // DivUintWithInt divides uint64 a with int64 b, returns uint64 if no overflow error.
  // It just checks overflow, if b is zero, a "divide by zero" panic throws.