Оператор обновления SQL Server через Powershell - PullRequest
0 голосов
/ 24 октября 2018

В настоящее время я использую следующий фрагмент кода для целей тестирования.

$database = 'REMOVED'
$server = 'REMOVED'
$SQLServer = "REMOVED"
$SQLDBName = "REMOVED"
$SQLuser = "REMOVED"
$SQLpassword = "REMOVED"

$SqlConnection = New-Object System.Data.SqlClient.SqlConnection
$SqlConnection.ConnectionString = "Server = $SQLServer; Database = 
$SQLDBName; User ID = $SQLuser; Password = $SQLpassword;"

$SqlConnection.Open()
$update = @"
   update ca_contact set last_name='Rech' where userid='OR010101'
"@

  $dbwrite = $SqlConnection.CreateCommand()
  $dbwrite.CommandText = $update
  $dbwrite.ExecuteNonQuery() 

$Sqlconnection.Close()

Я получаю возвращаемое значение '1', которое говорит мне, что оператор, кажется, работает.Но значение никогда не записывается в базу данных при просмотре через SQL Server Management Studio.

1 Ответ

0 голосов
/ 25 октября 2018

Должно быть, вы строите строку подключения .. Я не уверен ... но это должно работать.

$SQLServer = "tcp:ServerName.Domain.com"
$SQLDB = 'DB_name'
$Password = "VeryComplexPassword"
$USer = "Sophisticated_User"

$cn = new-object system.data.SqlClient.SqlConnection("Server=$SQLServer;Database=$SQLDB;User Id=$User;Password=$Password;");
$ds = new-object "System.Data.DataSet" "DataObject"
$q = 
@"
   UPDATE [DB_Name].[schema].[Table_Name]
   SET Updated_Column =  'New_Value'
   WHERE Filter_Column = 'Filter_Criteria'
"@
$da = new-object "System.Data.SqlClient.SqlDataAdapter" ($q, $cn)
$da.Fill($ds)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...