Próbuję parsować pole XML, które jest częścią bazy danych hurtowni danych SCOM 2007 i znalazłem wiele przykładów, które pokazują podobne scenariusze osiągania tego, jednak nic nie zwraca wartości, zwykle kiedy uruchomię kwerendę, to błędy.Zapytanie SQL do parsowania pola XML i pobierania wartości
Oto przykład, jeden wiersz z około tysiąca potrzebuję uruchomić to przeciwko, gdzie chcę pobrać wartości Anglii i Wielkiej Brytanii (GUID, które składają się na tag są spójne dla każdego typu danych, więc nigdy się nie zmieniaj i może być użyty do zapytania itp.). Oczywiście każdy rząd ma inny kod miasta i kraju i to właśnie chcę uchwycić.
Nazwa tabeli jest dbo.ManagedEntityProperty i nazwa kolumny jest PropertyXML
<Root>
<Property Guid="AFB4F9E6-BF48-1737-76AD-C9B3EC325B97">192.168.1.0</Property>
<Property Guid="5C324096-D928-76DB-E9E7-E629DCC261B1">WASPDC01.LIV10.Local</Property>
<Property Guid="96981E2D-DECF-7CB7-DEC5-5C52046B68A6">192.168.1.0</Property>
<Property Guid="FA3887C3-F274-306A-867C-37105A190F78">England</Property>
<Property Guid="61AA7309-595F-576E-337E-E9335E5CA773">255.255.255.0</Property>
<Property Guid="F8ABF27F-A169-6FCD-1862-C06F1DB4BF24">UK</Property>
<Property Guid="B832B2DE-A649-60A1-AC13-06F1EC601E5F">Active</Property>
</Root>
Wszelkie porady lub wskazówki? Próbowałem wdrożyć porady na temat SQL Server query xml attribute for an element value, ale wciąż jestem bardzo w moim dziecku SQL SQL i nigdy wcześniej nie musiałem robić czegoś takiego.
Genialny, rea lly szybka reakcja tam i działa świetnie. Musiałem tylko poprawić część deklaracji, ponieważ używam SQL 2005, ale to moja wina, ponieważ nie powiedziałem ci wersji :) – user2215800
Gdybym chciał wyświetlić wynik, dwie wartości XML w tym samym wierszu, ale inne kolumny , jak bym to zrobił? Próbuję zrozumieć moją "(.)" I jak mogę zmienić zachowanie skryptu z tego, aby być może celować oddzielnie w każdy identyfikator GUID, zamiast wyliczać wszystko, a następnie filtrować. Wiesz co mam na myśli? – user2215800
@ user2215800: zaktualizowałem moją odpowiedź –