OK below is what you have so far:
strReadSqlAllLangString ="SELECT * FROM StringsTable";
nRetVal = rs_lang_all.Open ( CRecordset::forwardOnly, \
strReadSqlAllLangString, CRecordset::readOnly );
CDBVariant varValue;
nFields = rs_lang_all.GetODBCFieldCount( );
short nFieldType = DEFAULT_FIELD_TYPE;
while ( !rs_lang_all.IsEOF() )
{
for(nIndex = 0; nIndex < nFields; nIndex++ )
{
rs_lang_all.GetFieldValue(nIndex, strString1);
arr_strAllLangStrings[nIndex][nLangStr] = strString1;
}
rs_lang_all.MoveNext();
nLangStr++;
}
It is better to show the whole function, you talk of CMemo but don't show any variable of the kind. CDBVariant is a DB file IO function not useful to CString. Memo is a text style variation datatype. Examine the Memo structure if any, and get a better feel for it.