This article was previously published under Q205439
This article has been archived. It is offered "as is" and will no longer be updated.
When you use data access technologies such as Microsoft Data Access Objects (DAO) or Microsoft ActiveX Data Objects (ADO) to open text files that contain a non-standard delimiter (such as a single quotation mark), the delimiter appears in the field data. Furthermore, text fields that contain an embedded field separator (such as a comma) do not parse properly.
For example, if a text file is formatted as follows:
'Doe, Jane','1 Main St.','Redmond','WA'
The recordset field data for the first column contains the following text:
and not 'Doe, Jane' as expected. This problem does not occur if you use double quotation marks to delimit text fields.
This problem occurs because the Microsoft Jet engine text Indexed Sequential Access Method (ISAM) or Microsoft Text ODBC Driver, which is contained in Odbcjt32.dll or the microsoft.jet.oledb.x.x OLE DB Provider, expects either a double quotation mark or no text delimiter at all. If you use double quotation marks as the text delimiter in the above-mentioned text file, this parsing problem does not occur. This problem only occurs when you use non-standard text delimiters.
To resolve this problem, use one of the following methods:
If you use a non-standard text delimiter, you must define the delimiter in the Schema.ini file. For example, in Schema.ini, add the following line:
In Notepad, create a new file in the same directory as the text file, and paste the following text:
Microsoft Data Access Components 1.5, Microsoft Data Access Components 2.0, Microsoft Data Access Components 2.1, Microsoft Data Access Components 2.1 Service Pack 2, Microsoft Data Access Components 2.1 Service Pack 1, Microsoft Data Access Components 2.1 Service Pack 2, Microsoft Data Access Components 2.5, Microsoft Data Access Components 2.5 Service Pack 1, Microsoft Data Access Components 2.5 Service Pack 2, Microsoft Data Access Components 2.6