Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Microsoft SQL Server 2005/2008:XML a typ danych tekst/varchar

Jeśli przechowujesz xml w kolumnie wpisanej xml, dane nie zostaną zapisane jako zwykły tekst, jak w przypadku nvarchar, będą one przechowywane w jakimś przeanalizowanym drzewie danych, które z kolei będzie mniejsze niż nieprzeanalizowana wersja xml. To nie tylko zmniejsza rozmiar bazy danych, ale daje również inne korzyści, takie jak walidacja, łatwa manipulacja itp. (nawet jeśli nie używasz żadnej z nich, nadal są one dostępne do wykorzystania w przyszłości).

Z drugiej strony serwer będzie musiał przeanalizować dane po wstawieniu, co prawdopodobnie spowolni twoją bazę danych - musisz podjąć decyzję dotyczącą szybkości w stosunku do rozmiaru.

Edytuj:

Osobiście uważam, że dane w bazie danych powinny być przechowywane jako xml tylko wtedy, gdy mają strukturę trudną do zaimplementowania w modelu relacyjnym, np. układy, opisy stylów itp. Zwykle oznacza to, że nie będzie dużo danych, a szybkość nie stanowi problemu, dlatego dodano funkcje xml, takie jak walidacja danych i możliwość manipulacji (również, co nie mniej ważne, możliwość kliknięcia wartości w studiu zarządzania i zobacz sformatowany xml - naprawdę uwielbiam tę funkcję!), przewyższają koszty.

Nie mam bezpośredniego doświadczenia w przechowywaniu dużych ilości xml w bazie danych i nie zrobiłbym tego, gdybym miał taką opcję, ponieważ prawie zawsze jest wolniejszy niż model relacyjny, ale gdyby tak było, to d zalecić profilowanie obu opcji i wybór między rozmiarem a szybkością, które najlepiej odpowiadają Twoim potrzebom.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wiele wierszy do jednej wartości oddzielonej przecinkami w Sql Server

  2. Konwertuj „smalldatetime” na „datetime” w SQL Server (przykłady T-SQL)

  3. DBA — jak zabić wszystkie procesy bazy danych na serwerze SQL?

  4. Narzędzie SQL Backup Recovery Tool do naprawy uszkodzonych kopii zapasowych SQL — recenzja produktu — gościnny post autorstwa Daniela Jonesa

  5. Jak podzielić wartości z jednej kolumny na wartości z wielu kolumn?