Мне нужен столбец с несколькими значениями, он может быть реализован как поле xml
Может быть преобразовано в запятую при необходимости
запрос списка XML на сервере sql с использованием Xquery .
Будучи полем xml, можно решить некоторые проблемы.
С CSV: Невозможно гарантировать, что каждое значение является правильным типом данных: нет способа предотвратить 1,2,3, банан, 5
При использовании XML: значения в теге могут быть принудительного типа
С CSV: Невозможно использовать ограничения внешнего ключа для связи значений с таблицей поиска; нет способа обеспечить ссылочную целостность.
С XML: все еще проблема
С CSV: Невозможно применить уникальность: нет способа предотвратить 1,2,3,3,3,5
С XML: все еще проблема
С CSV: Невозможно удалить значение из списка без извлечения всего списка.
С XML: отдельные элементы могут быть удалены
С CSV: Трудно найти все объекты с данным значением в списке; Вы должны использовать неэффективное сканирование таблицы.
С XML: поле xml может быть проиндексировано
С CSV: Трудно сосчитать элементы в списке или выполнить другие агрегированные запросы. **
С XML: не особенно сложно
С CSV: Трудно объединить значения в справочную таблицу, на которую они ссылаются. **
С XML: не особенно сложно
С CSV: Трудно получить список в отсортированном порядке.
С XML: не особенно сложно
С CSV: Хранение целых чисел в виде строк занимает примерно вдвое больше места, чем хранение двоичных целых.
С XML: хранилище еще хуже, чем CSV
С CSV: Плюс много запятых.
С XML: теги используются вместо запятых
Короче говоря, использование XML позволяет обойти некоторые проблемы со списком с разделителями и при необходимости может быть преобразовано в список с разделителями