### Elasticsearch Version

main @ 1266718e1cdef07a8c7cd1a463707825fabf7277

### Installed Plugins

_No response_

### Java Version

openjdk 17.0.8 2023-07-18

### OS Version

Ubuntu 23.;04

### Problem Description

`DISSECT`'s option `append_separator` is not case insensitive in contrast to all other ESQL keywords.

### Steps to Reproduce

This query works:
```
POST _query?format=txt
{
  "query": """
ROW a = "john jacob jingleheimer schmidt"
| DISSECT a "%{+name} %{+name} %{+name} %{+name}" append_separator="---"
  """
}
```
The identical query with upper cased `APPEND_SEPARATOR` does not:
```
POST _query?format=txt
{
  "query": """
ROW a = "john jacob jingleheimer schmidt"
| DISSECT a "%{+name} %{+name} %{+name} %{+name}" APPEND_SEPARATOR="---"
  """
}
```
It fails with `Invalid option for dissect: [APPEND_SEPARATOR]`.

### Logs (if relevant)

_No response_
x-pack/plugin/esql/src/test/java/org/elasticsearch/xpack/esql/parser/StatementParserTests.java
"row x = ?",
            List.of(new TypedParamValue("time_duration", "bar seconds")),
            "Cannot parse [bar seconds] to TIME_DURATION"
        );
        expectError(
            "row x = ?",
            List.of(new TypedParamValue("date_period", "2 minutes")),
            "Cannot parse [2 minutes] to DATE_PERIOD, did you mean TIME_DURATION?"
        );
        expectError(
            "row x = ?",
            List.of(new TypedParamValue("time_duration", "11 months")),
            "Cannot parse [11 months] to TIME_DURATION, did you mean DATE_PERIOD?"
        );
    }
    public void testMissingInputParams() {
        expectError("row x = ?, y = ?", List.of(new TypedParamValue("integer", 1)), "Not enough actual parameters 1");
    }
    private void assertIdentifierAsIndexPattern(String identifier, String statement) {
        LogicalPlan from = statement(statement);
        assertThat(from, instanceOf(EsqlUnresolvedRelation.class));
        EsqlUnresolvedRelation table = (EsqlUnresolvedRelation) from;
        assertThat(table.table().index(), is(identifier));
    }
    private LogicalPlan statement(String e) {
        return statement(e, List.of());
    }
    private LogicalPlan statement(String e, List<TypedParamValue> params) {
        return parser.createStatement(e, params);
    }