We reciently upgraded from the older version of mysql++ 1.7.9 (g++ 2.95.4)
to mysql++ 1.7.31 (g++ 3.4.4) and found all our code was broken. After
looking into it we discovered the new lookup_by_name() and found this
thread. I guess we didn't read the release notes that closely :-(
Turns out, we make heavy use of the Row::operator(const char *). As a
matter of fact, none of the code uses the Row::operator(int) or
Row::operator(size_type). We used the Row::operator(const char *)
because we didn't want to depend on the order of the columns.
We will give your patch a try and let you know how it works.