Команда SELECT не копирует все данные

Я копировал свои данные из Excel в datagridview с помощью SELECT заявления. Но это было не очень хорошо..

Данные показывают, как это

но мои данные Excel

мой код:

Dim CON As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=""D:\OTDR_DATA\" & TextBox1.Text & "\PRODUCT_CAREER.XLS"";Extended Properties=""Excel 8.0;HDR=YES"";")
Dim DA As New OleDbDataAdapter("SELECT * FROM [PRODUCT_CAREER$]", CON)
DA.Fill(DS)
DataGridView1.DataSource = DS.Tables(0)

Кто-нибудь знает, почему это может быть? У меня есть поиск в Google, но не такой вопрос, как этот..

1 ответ

Решение

Драйвер Excel определяет тип данных в столбце по первым 8 (по умолчанию) строкам. У меня есть ощущение, что у вас есть много числовых данных в этом столбце, прежде чем встречаются буквенно-цифровые.

Чтобы изменить это поведение, вам нужно установить ключ реестра TypeGuessRows в 0, Расположение ключа зависит от того, какой драйвер вы используете в строке подключения (Jet, AccessConnectivityEngine и т. Д.)

Вот подробная инструкция о том, как изменить настройки.

Другие вопросы по тегам