Создайте базу данных SQLite на основе набора данных XSD

#.net #database #sqlite

Вопрос:

Кто-нибудь знает, есть ли способ создать базу данных SQLite на основе XSD DataSet ? В прошлом я просто использовал базовый менеджер SQLite, но я хочу немного больше увязать это с моей .NET разработкой, если это возможно.

Ответ №1:

Я подозреваю, что в общем случае это сложно; XML-схема допускает некоторые довольно причудливые конструкции типов. Я не уверен, как бы вы сделали, например, группы подстановок или расширения ограничений типов.

Однако должно быть возможно довольно быстро собрать что-то вместе (особенно сопоставление из классов в System.Xml.Schema), которое работает для 90% схем (т. Е. элементов последовательности и выбора с несколькими простыми типами данных).

Ответ №2:

Возможно, вы могли бы использовать преобразование XSL для преобразования XSD в определения таблиц SQL. Аналогично, я не могу найти никаких предыдущих примеров этого, но я бы подумал, что это возможно.

Я бы предположил, что универсальный XSLT для XSD->SQL, однажды написанный, может быть применен к любому такому сценарию (и тоже будет кроссплатформенным). Возможно, кто-то делал это раньше…

Ответ №3:

Я уверен, что вы могли бы написать небольшое приложение, которое берет XSD-файл и анализирует его в SQL-скрипт. Я никогда не видел кода для этого, но это не значит, что его не существует.