При импорте данных из Excel в MS SQL через Powershell, текстовое поле воспринимается как числовое из-за первых числовых значений?
Почти в 100% случаев первые данные без символов, из-за чего видимо Powershell преобразует колонку во временной таблице в числовую, и все данные где есть хоть 1 символ теряются. Есть ли адекватный способ не трогая начальные файлы обойти этот баг?
Или проще отказаться от использования Powershell для этой задачи?
Например в екселе формат колонки "Общий", в нем содержатся данные типа:
1000000
1243596
4466777
5436FT9
2454A00
24ДА355
Вот кусок кода в котором это происходит:
$Folderpath = '\\Путь_до_файла'
Get-ChildItem -Path $Folderpath -Force | ?{$_.NAME -like "*.xlsx" } | %{
foreach ($FilePath in $_.FullName)
{
$FilePath = $_.FullName
$connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=`"$filepath`";Extended Properties=`"Excel 12.0 Xml;HDR=YES;IMEX=1`";"
$conn = new-object System.Data.OleDb.OleDbConnection($connString)
$conn.open()
$qry = 'select [Код] from [Лист1$]'
$cmd = new-object System.Data.OleDb.OleDbCommand($qry,$conn)
$da = new-object System.Data.OleDb.OleDbDataAdapter($cmd)
$dt = new-object System.Data.dataTable
[void]$da.fill($dt)
....