I have seen both Option=3
and Option=4
in connection string samples for MySQL ODBC but no explanation or documentation. What do those numbers mean?
Asked
Active
Viewed 1.3k times
15

Gord Thompson
- 116,920
- 32
- 215
- 418

hawbsl
- 15,313
- 25
- 73
- 114
1 Answers
19
The Option=
value is the sum of the numeric values for various flags that specify how Connector/ODBC should work. Its default value is 0.
From an older version of the Connector/ODBC documentation at web.archive.org:
Option=3;
corresponded to FLAG_FIELD_LENGTH
(1) + FLAG_FOUND_ROWS
(2)
Option=4;
was FLAG_DEBUG
According to the current list of Connector/ODBC options here ...
Table 5.2 Connector/ODBC Option Parameters
... both FLAG_FIELD_LENGTH
(1) and FLAG_DEBUG
(4) have been removed.
MySQL also recommends using the parameter names instead of (the sum of) their numeric values, not only for clarity, but because not all options have numeric values. So, instead of
Option=2;
we should use
FOUND_ROWS=1;

Gord Thompson
- 116,920
- 32
- 215
- 418

scatman
- 14,109
- 22
- 70
- 93
-
This was a life saver. I went from MySQL ODBC version 5.3.4 to 5.3.6 and the `Option=3` in the connection string was all of a sudden throwing "**MySQL Server has gone away**" errors when I tried to open a recordset off of the connection (even thought the connection seemed to open fine). I changed the option part to `FOUND_ROWS=1` and everything is now working fine. Thanks again! – Code Animal Jul 21 '16 at 10:08