powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / XML парсинг
6 сообщений из 6, страница 1 из 1
XML парсинг
    #39613352
iroquai
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите пожалуйста...
Необходимо получить список пользователей и ролей по каждой папке отчётов Reporting Service. Описание списка ролей я смог найти только в столбце XMLDescription таблицы SecData базы ReportServer.

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
<Policies>	
	<Policy>
			<GroupUserName>
				MYDOMAIN\DEVPROG1
			</GroupUserName>
			<GroupUserId>
			AQUAAAAAAAUVAAAA/TdCQBroe1YH5TsrpC4AAA==
			</GroupUserId>
			<Roles>
				<Role>
					<Name>
						MS Analyst
					</Name>
				</Role>
			</Roles>
		</Policy>
		<Policy>
			<GroupUserName>
				MYDOMAIN\DEVPROG2
			</GroupUserName>
			<GroupUserId>
				AQUAAAAAAAUVAAAA/TdCQBroe1YH5Tsr3WAAAA==
			</GroupUserId>
			<Roles>
				<Role>
					<Name>
						Browser
					</Name>
				</Role>
				<Role>
					<Name>
						Content Manager
					</Name>
				</Role>
				<Role>
					<Name>
						MS Analyst
					</Name>
				</Role>
			</Roles>
		</Policy>
	</Policies>	




Подскажите, как прочитать отсюда имя пользователя (содержимое тэга /Policies/Policy/GroupUserName) и все относящиеся к нему роли (содержимое тэгов /Policies/Policy/Roles/Role/Name)?
...
Рейтинг: 0 / 0
XML парсинг
    #39613390
Ilnur26
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
iroquai,

Код: sql
1.
2.
3.
4.
5.
select 
	p.n.value('GroupUserName[1]', 'varchar(255)')
,	r.n.value('Name[1]', 'varchar(255)')
from @xml.nodes('/Policies/Policy') p(n)
cross apply p.n.nodes('Roles/Role') as r(n)
...
Рейтинг: 0 / 0
XML парсинг
    #39613421
iroquai
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо огромное!
...
Рейтинг: 0 / 0
XML парсинг
    #39613432
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iroquai, или так
Код: sql
1.
2.
3.
4.
select 
	 n.v.value('../../../GroupUserName[1]', 'nvarchar(50)')
	,n.v.value('.', 'nvarchar(50)')
from @xml.nodes('//Policy/Roles/Role/Name') n(v)
...
Рейтинг: 0 / 0
XML парсинг
    #39613482
iroquai
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как сделать тоже самое не с переменной, а с XML столбцом таблицы?
...
Рейтинг: 0 / 0
XML парсинг
    #39613501
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iroquai, через cross/outer apply
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / XML парсинг
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]