![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Pankon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: 3 Всего: 5 |
Как получить XML Schema для таблицы базы данных? Т.е. Нужна XML Schema, с помощью которой можно проверить валидность xml-файла, который будет использоваться для вставки данных в таблицу БД.
|
|||
|
||||
Wanderer2019 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 937 Регистрация: 3.12.2004 Где: Санкт-Петербург/П рага Репутация: 7 Всего: 17 |
т.е. формально схема нужна не для таблицы БД, а для xml файла? Если да, то тут два варианта - 1. (и наиболее действенный) - нарисовать схему ручками. 2. воспользоваться утилиткой xsd.exe, но она не всегда корректно рисует схему. Может понадобиться частичная правка. |
|||
|
||||
Pankon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: 3 Всего: 5 |
xsd.exe делает схему для xml - фаила, а не для таблицы, т.е. все равно придется вначале xml - фаил рисовать, а потом на него xsd.exe натравливать....
Я надеялся найти утилиту/классы, которые анализируют таблицу (типы столбцов, Not Null, ключи и т.д) и автоматом дает схему (самому писать ломы). |
|||
|
||||
Wanderer2019 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 937 Регистрация: 3.12.2004 Где: Санкт-Петербург/П рага Репутация: 7 Всего: 17 |
порылся в мсдн.. - у ДатаСета есть метод - GetXmlSchema. Может оно?
|
|||
|
||||
loma |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 7.7.2008 Репутация: 1 Всего: 1 |
Если БД SQL Server 2005 то очень просто делается в Menagment studio
select * from ТВОЯ ТАБЛИЦА for xml raw('Row'), elements xsinil, ROOT('MyDocument') Открываешь полученный фаил Идёшь в меню ->XML->CREATE Schema Это сообщение отредактировал(а) loma - 12.7.2008, 02:03 |
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 22 Всего: 118 |
ппц у вас методы. у меня есть таблицы по 2 гига и более.... прикиньте их сдампить таким образом (ну хоть top ставь прямо) насколько гемморойно. уж лучше я ручками схемку составлю 8)
а что вообще подразумевается под "валидным xml для вставки в базу"?? -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
Pankon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: 3 Всего: 5 |
Данные приходят в xml файле... Может случиться, что, например, на месте, где должно было быть число, стоит строка... (Столбец в БД integer) С помощью XML Schema можно сразу проверить такие случаи. |
|||
|
||||
Bogdan1024 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1436 Регистрация: 28.9.2005 Где: Киев Репутация: 5 Всего: 13 |
Создаёшь датасэт, набрасываешь на него из сервер эксплорера таблицы. Сам файл имеет расширение xsd, тоесть, схема. Такое подходит?
-------------------- ![]() |
|||
|
||||
Idsa |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 14 Всего: 62 |
Pankon, думаю, нужно посмотреть в сторону SqlConnection.GetSchema
|
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |