Как выбрать данные таблицы от другой базы данных в SQL Server?

$ item не заполнен. Вы утверждаете, что $ users = $ item.username, но $ item в этот момент равен нулю.

Попробуйте:

$list = Import-csv "PATH"

ForEach ($item in $list) {
$users = $item.Username
$groups = $item.Group


Add-ADPrincipalGroupMembership -Identity $users -MemberOf $groups -Whatif |
Set-ADUser $users -HomeDirectory "Path" -Homedrive H -WhatIf
}

Это в основном говорит: Для каждого элемента в списке используйте синтаксис .username и .group, чтобы заполнить переменную users и groups. Затем выполните команды Add и Set. Помните, что это цикл, который запускается один раз для каждого элемента $ в списке $.

Тестовый код:

$list = Import-csv "PATH"

ForEach ($item in $list) {
$user = $item.Username
$group = $item.Group
Write-Host "$user is in $group"
}
46
задан DineshDB 1 June 2018 в 06:31
поделиться

4 ответа

Вам нужен sp_addlinkedserver ()

http://msdn.microsoft.com/en-us/library/ms190479.aspx

Пример:

exec sp_addlinkedserver @server = 'test'

затем

select * from [server].[database].[schema].[table]

В Вашем примере:

select * from [test].[testdb].[dbo].[table]
57
ответ дан Matthew Farwell 26 November 2019 в 20:21
поделиться

Чтобы сделать межсерверный запрос, проверьте системную хранимую процедуру: sp_addlinkedserver в справочных файлах.

После того как сервер связан, можно выполнить запрос против него.

5
ответ дан Mitch Baker 26 November 2019 в 20:21
поделиться

Используя Microsoft SQL Server Management Studio можно создать Linked Server. Сначала установите связь с текущим (локальным) сервером, затем перейдите в Server Objects> Linked Servers> контекстное меню> New Linked Server. В окне New Linked Server необходимо указать желаемое имя сервера для удаленного сервера, реальное имя сервера или IP-адрес (Источник данных) и учетные данные (страница безопасности).

И растушевка можно выбрать данные из связанного сервера:

select * from [linked_server_name].[database].[schema].[table]
0
ответ дан 26 November 2019 в 20:21
поделиться

Попытайтесь использовать OPENDATASOURCE, синтаксис похож на это:

select * from OPENDATASOURCE ('SQLNCLI', 'Data Source=192.168.6.69;Initial Catalog=AnotherDatabase;Persist Security Info=True;User ID=sa;Password=AnotherDBPassword;MultipleActiveResultSets=true;' ).HumanResources.Department.MyTable    
0
ответ дан 26 November 2019 в 20:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: