Şu anda XML adlı XML'de depo adı verilen bir veritabanında veriyi depolayan bu koda sahibim.SQL Server'daki bir tabloya tablo sütunundan XML aktarma
CREATE TABLE Storage
(
ID INT IDENTITY(1,1) PRIMARY KEY,
data XML NOT NULL
)
GO
INSERT INTO Storage(data)
VALUES('<footballteams>
<team manager="Benitez">
<name>Liverpool</name>
<ground>Anfield</ground>
</team>
<team manager="Mourinho">
<name>Chelsea</name>
<ground>Stamford Bridge</ground>
</team>
<team manager="Wenger">
<name>Arsenal</name>
<ground>Highbury</ground>
</team>
</footballteams>');
ben biçimde veri ve görüntüler onu imha eder Futbol Görünüm adlı bir görünüm oluşturmak istiyorum: FootballView (Takım adı, Yönetici, Toprak).
Daha önce tablo sütunlarına .nodes() yöntemini kullanarak tam belgeleri parçalara ayırdım, ancak bir görünüm oluştururken daha zorlayıcı görünüyor (görünüm kullanma nedenlerim var). Sorun şu ki, daha önce sadece xml = 'xmlcontent' olarak DECLARE'd olan bir değişken @ girişine denedim, ancak bu görülemez yapılamaz ve Depolama tablosu sütunundaki XML'yi ayrıştırmak istiyorum.
Herhangi bir fikrin var mı? Şimdiden teşekkürler.
DÜZENLEME:
SELECT
TeamName = Foot.value('(name)[1]', 'varchar(100)'),
Manager = Foot.value('(@manager)', 'varchar(100)'),
Ground = Foot.value('(ground)[1]', 'varchar(100)')
FROM
@input.nodes('/footballteams/team') AS Tbl(Foot)
EDIT2: Ben tablolarına rendelenmiş olsaydı
Önceden, bu kullandığım kod olurdu Bu beklediğim çıkıştır.
Sütuna parçalamak için kullandığınız kodu ve ayrıca dönüştürmeyi denemeye nasıl başladığınızı da kaydeder misiniz? –
Yukarıdaki düzenlemeye bakın. – themenace92
Hangi çıktı bekliyorsunuz? – Kane