我目前正在研究工作中的工具。在用户登录时,将运行脚本以创建包含计算机信息的XML文档。然后它启动另一个脚本以使用该信息编辑数据库。
如果在我自己的计算机上使用,这种方法非常有效。当我远程操作并手动运行时,它也适用于同事。然而。我开始相信这是因为它在尝试更新数据库时会锁定数据库。
我希望多台机器能够写入它。这可能吗?怎么样?
请记住,必须使用PowerShell 2.0。
$DataBaseFilePath = "\\SomeServer\SomeShare\SomeFolder\..."
$adOpenDynamic = 2
$adLockPessimistic = -1
$Connection = New-Object -ComObject ADODB.Connection
$RecordSet = New-Object -ComObject ADODB.Recordset
$Connection.Open("Provider = Microsoft.ACE.OLEDB.12.0; Data Source = $($DataBaseFilePath)")
$RecordSet.Open("SELECT * FROM Clients WHERE ComputerName = '$($Env:COMPUTERNAME)'",
$Connection, $adOpenDynamic, $adLockPessimistic)