2
我正在玩SMO並試圖用它來將數據庫所有者更改爲sa
。代碼是SQL Server SMO,應該每次調用刷新我修改了一些東西?
# To simplify our discussing, let's say we have a function Get-SMOServer
$s = Get-SMOServer -Instance myserver\myinstance
$s.databases | ?{$_.owner -ne "sa"} | %{$_.setowner("sa", $true)}
在這一點上,當我從SSMS檢查數據庫所有者時,所有者已被更改。但是,如果我從$s.databases
檢查它,我仍然有舊的數據,直到我做這樣的事情:
$s.databases | %{$_.refresh()}
然後我可以從$s.databases
得到正確的結果。 我檢查了SMO對象,發現其中很多都有refresh()
函數。我的問題是,每次修改某個對象時,是否應該調用refresh()
?如何查找具有refresh()
成員的所有對象類型?
謝謝