Импорт CSV из PowerShell в SQL Server - PullRequest
       2

Импорт CSV из PowerShell в SQL Server

0 голосов
/ 03 октября 2019

Я пытался импортировать файл CSV из PowerShell в свою базу данных SQL Server. Я уже создал базу данных и таблицы со столбцами. Я получил данные в CSV-файле, который мне нужно импортировать.

Я попытался исследовать и нашел немного кода, который я изменил, чтобы он работал, но когда я запускаю код, я получаю ошибку:

Import-CsvToSql: исключение, вызывающее «writetoserver» с аргументом «1»: «транзакция не связана с соединением или была завершена»

Но я не импортировал данные в таблицу, поэтому я не знаю, что не так.

Вот код, который я получил до сих пор:

Import-Module csvsqlimport
Import-CsvToSql -Csv C:\Users\Tim\Desktop\POWERSHELL\AutoParts.csv `
    -SqlServer DHCP_SERVER -Database FeilAuto4 `
    -Table dbo.Reservedele -FirstRowColumns -Delimiter ";" -Truncate

1 Ответ

0 голосов
/ 17 октября 2019

Возможно, вы захотите попробовать модуль «SqlServer», так как он постоянно обновляется Microsoft и имеет несколько командлетов SQL. Единственным недостатком является то, что вам придется разделять скрипт на несколько команд в зависимости от их командлетов.

## Install module if not installed, this is a one time install.
Install-Module SqlServer

## Input Variables
$csvPath = "C:\Users\Tim\Desktop\POWERSHELL\AutoParts.csv"
$csvDelimiter = ";"
$serverName = "DHCP_SERVER"
$databaseName = "FeilAuto4"
$tableSchema = "dbo"
$tableName = "Reservedele"

## Truncate Table
Invoke-Sqlcmd -ServerInstance $serverName -Database $databaseName -Query "TRUNCATE TABLE $tableSchema.$tableName"

## Import CSV into SQL
Import-Csv -Path $csvPath -Delimiter $csvDelimiter | Write-SqlTableData -ServerInstance $serverName -DatabaseName $databaseName -SchemaName $tableSchema -TableName $tableName -Force
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...