func()

in statement.go [150:177]


func (s *stmt) query(ctx context.Context, args []namedValue) (driver.Rows, error) {
	if s.conn.connectionId == "" {
		return nil, driver.ErrBadConn
	}

	msg := message.ExecuteRequest_builder{
		StatementHandle:    s.handle,
		ParameterValues:    s.parametersToTypedValues(args),
		FirstFrameMaxSize:  s.conn.config.frameMaxSize,
		HasParameterValues: true,
	}.Build()

	if s.conn.config.frameMaxSize <= -1 {
		msg.SetFirstFrameMaxSize(math.MaxInt32)
	} else {
		msg.SetFirstFrameMaxSize(s.conn.config.frameMaxSize)
	}

	res, err := s.conn.httpClient.post(ctx, msg)

	if err != nil {
		return nil, s.conn.avaticaErrorToResponseErrorOrError(err)
	}

	resultSet := res.(*message.ExecuteResponse).GetResults()

	return newRows(s.conn, s.statementID, false, resultSet), nil
}