Como no .Net importo valores de um CSV no formato que eu quero usar o OleDB?

Eu tenho um arquivo CSV que possui uma coluna que contém seqüências de caracteres que se parecem com números inteiros. Ou seja, eles devem ser tratados como cadeias de caracteres, mas, como são números, parecem ser importados como números inteiros (eliminando os zeros à esquerda).

Dados de exemplo:

0000000000079000099900001200010020000050004100000007

O problema que estou vendo é que o último ponto de dados de exemplo é DBNull.Value. Estou assumindo que isso ocorre porque o OleDB está tratando essa coluna como um número inteiro (os pontos de dados passam sem seus zeros à esquerda também) e que 0004100000007 é maior que o maior valor inteiro.

Existe alguma maneira de dizer "coluna [0] é uma string, não a leia como um número inteiro"? Ao ler os dados?

O código que estou usando atualmente é:

OleDbConnection dbConn = new OleDbConnection(SourceConnectionString);
OleDbCommand dbCommand = new OleDbCommand("SELECT * FROM test.csv", dbConn);
dbConn.Open();
OleDbDataReader dbReader = dbCommand.ExecuteReader();

while (dbReader.Read())
{
    if (dbReader[0] != DBNull.Value)
    {
         // do some work
    }
}

questionAnswers(5)

yourAnswerToTheQuestion