Я використовую цей (спрощений) шматок коду для вилучення набору таблиць з SQL Server за допомогою BCP .
$OutputDirectory = "c:\junk\"
$ServerOption = "-SServerName"
$TargetDatabase = "Content.dbo."
$ExtractTables = @(
"Page"
, "ChecklistItemCategory"
, "ChecklistItem"
)
for ($i=0; $i -le $ExtractTables.Length – 1; $i++) {
$InputFullTableName = "$TargetDatabase$($ExtractTables[$i])"
$OutputFullFileName = "$OutputDirectory$($ExtractTables[$i])"
bcp $InputFullTableName out $OutputFullFileName -T -c $ServerOption
}
Це чудово працює, але зараз деякі таблиці потрібно витягувати за допомогою подань, а деякі ні. Тож мені потрібна структура даних приблизно така:
"Page" "vExtractPage"
, "ChecklistItemCategory" "ChecklistItemCategory"
, "ChecklistItem" "vExtractChecklistItem"
Я розглядав хеші, але не знаходжу нічого про те, як прокрутити хеш. Що тут правильно робити? Можливо, просто використовувати масив, але з обома значеннями, розділеними пробілом?
Або мені не вистачає чогось очевидного?