Literal fields in SQL with ADO and ODBC yield Access Violation



I'm trying to run some SQL that looks like this:

select col1, 'literal' as col2 from mytable

mytable is a dBase table, accessed through the OLEDB ODBC provider and
using a TADODataSet in Delphi 7.

The problem is that when I try to access fields in the result set, I
get Access Violations and the reason, I presume, is because the
Field.Size for that literal field is 2147483598.

I've tried a number of things, including a CAST expression on the
literal, doing a FieldDefs.Update and then changing the value of the
Size prior to Open, and trying to change the field size after opening
the dataset. None worked.

Suggestions appreciated.
.