Я использую оболочку power для выполнения одной из хранимых процедур, которая имеет один из параметров с типом данных sql_Variant и находится в SSISDB (системная хранимая процедура)
Поскольку sql_variant поддерживает тип данных, который я передаюint, string & boolean типы данных.
хранимая процедура выполняется нормально, когда я передаю строковый тип данных.но не int и boolean.
Имя процедуры:
Catalog.Set_Object_Parameter_Value
У него есть один параметр с типом данных SQL_Variant.Ниже приведен снимок экрана.
При вводе значения на основе некоторых условий я получу тип данных int / string / bool.
КакМогу ли я обработать / преобразовать эти значения в тип данных Sql_Variant перед вводом с помощью Power-shell.
В настоящее время моя команда power-shell выглядит примерно так:
$procSignature = "EXEC [catalog].[set_object_parameter_value] @object_type,@folder_name,@project_name,@parameter_name,@parameter_value,@object_name";
$cmd = New-Object System.Data.SqlClient.SqlCommand;
$cmd.Connection = $catalogConnection;
$cmd.CommandText = $procSignature;
$cmd.Parameters.AddWithValue("@object_type", $Scope ) | Out-Null;
$cmd.Parameters.AddWithValue("@folder_name", $FolderName ) | Out-Null;
$cmd.Parameters.AddWithValue("@project_name", $ProjectName ) | Out-Null;
$cmd.Parameters.AddWithValue("@parameter_name", $ParmeterName ) | Out-Null;
$cmd.Parameters.AddWithValue("@parameter_value", $ParmeterValue ) | Out-Null;
$cmd.Parameters.AddWithValue("@object_name", $object ) | Out-Null;