Коллекция схем XML SQL Server - интересная концепция, и я считаю ее очень полезной при разработке динамического содержимого данных. Однако, когда я работаю над реализацией Коллекций Schema, мне очень сложно их поддерживать.
Коллекция схем DDL позволяет использовать только существующие узлы CREATE и ALTER/ADD.
CREATE XML SCHEMA COLLECTION [ <relational_schema>. ]sql_identifier AS 'XSD Content'
ALTER XML SCHEMA COLLECTION [ <relational_schema>. ]sql_identifier ADD 'Schema Component'
Если вы хотите удалить любой из node из схемы, вы должны выпустить следующие DDL.
- Если этот сбор схемы назначен столбцу таблицы, вам нужно изменить таблицу, чтобы удалить ассоциацию коллекции схем из этого столбца.
- Отбросить объект коллекции схемы
- Повторно создать коллекцию схем
- Изменить столбец таблицы, чтобы повторно связать коллекцию схемы с этим столбцом.
Это боль, когда речь идет о 100+ схемах в коллекции. Кроме того, вам нужно снова создать XML-индексы, если таковые имеются.
Любые решения, предложения, трюки, чтобы упростить процесс редактирования объекта коллекции схемы?