Tipul de date XML este foarte popular, deoarece acest tip de date este suficient pentru a partaja cu ușurință cu o varietate de aplicații diferite, astfel încât un programator SQL novice trebuie să aibă o idee despre modul de a stoca aceste date și modul în care să se ocupe în SQL.
De exemplu, în ultimul articol despre logarea modificărilor datelor dintr-un tabel, am păstrat înregistrări vechi și noi în text simplu, deși am putea folosi XML pentru aceasta.
Deci, continuați, pentru a stoca tipul de date XML în tabel, trebuie să selectați tipul corespunzător, este de asemenea numit xml. Vom realiza interogări prin Management Studio.
După cum puteți vedea totul simplu, am creat un tabel în care sunt doi stâlpi:
Id este identificatorul înregistrării;
Xmldate - în consecință, unele date XML.
Acum, să notăm ceva acolo, pentru aceasta executăm o inserție de interogare simplă
Aici, am marcat manual un document xml și l-am scris în foaia de calcul. Pentru a vedea pur și simplu datele din acest tabel, xml este afișat într-o formă ușor de citit, executați interogarea prin intermediul instrucțiunii select:
Veți obține date cum ar fi:
Funcțiile Transact-sql pentru lucrul cu datele XML.
Aceste funcții sunt numite metode și vom începe cu metoda de interogare.
Interogare - face o selecție în documentul xml în sine, care este stocat în tabelul nostru, și ia un parametru este șirul de interogare pentru documentul xml, adică exact ce vrei de la xml. Returnează de asemenea date de tip xml. De exemplu, de mai sus am creat tabelul de cataloage catalog de rădăcini și avem nevoie doar de obținerea etichetei de nume, pentru aceasta executați următoarea interogare:
și în schimb veți primi date cum ar fi:
Sper că sensul acestei metode este clar.
Apoi, luați în considerare modificarea funcției.
Modificați - deoarece numele lor sunt clare, modifică datele xml. Acceptă un parametru reprezintă instrucțiunile reale de modificare a documentului xml. Utilizat în constructul de actualizare.
Exemple. Pentru a șterge un nod, utilizați interogarea:
Aici am șters nodul pentru ultimul nume, utilizați interogarea selectată în acest tabel pentru a le testa.
Pentru a insera un nod, folosiți interogarea:
Aici am adăugat nodul ultimului nume înapoi în director. Pentru a testa, utilizați aceeași interogare selectată,
Pentru a actualiza valoarea într-un nod, utilizați următoarea interogare:
Aici, în primul nume de nod (bine, el este unul) a schimbat sensul de "Ivan" la "Serghei".
Să trecem la metoda valorii.
Valoare - returnează valorile nodului. Este foarte convenabil de utilizat atunci când doriți să preluați nu un document xml, ci valorile acestuia. Este nevoie de doi parametri, primul este locul unde se obține valoarea, iar al doilea, de tipul cu care doriți să obțineți.
Uneori doriți să interogare din tabel nu cu XML de date XML pentru a obține datele, de asemenea, este posibil să se facă, de exemplu, în următoarea interogare vom scrie într-o variabilă de rând de tabel de tip XML în tabel cu identificatorul 2, și apoi a obține doar aceste valori.
Și încă un exemplu de claritate (imaginea de mai jos), este similar cu cea anterioară, dar în ea doar înlocuim datele statice.