MySQL Forums
Forum List  »  Russian

Entity Framework + MySQL (InnoDB): проблема создания модели имеющейся БД
Posted by: Ivan Shkuropadsky
Date: October 30, 2009 05:44AM

Здравствуйте!
Извините если не по адресу, но при разработке desktop-клиента к имеющейся БД наткнулись командой на следующую проблему.


Имеется БД MySQL - в базе данных около 100 таблиц, все они связаны друг с другом.
Тип таблиц - InnoDB. У таблиц имеются в наличии внешние ключи.

Создание новой модели базы в Visual Studio 2008 выглядит следующим образом.
Запускается мастер создания ADO.NET Entity Data Model. Соединение устанавливается успешно. Отображается список таблиц. Выбираются все таблицы и запускается процедура создания модели ( .edmx ).

Модель создается около часа (Windows XP SP2, AMD 5600+ Athlon64 X2, 4Gb)!
Причем все это время Visual Studio систему не нагружает вообще. Процессор полностью занят процессом "mysqld.exe" - сервер MySQL.

После того как "mysqld.exe" отработал, в самой Visual Studio модель ( .edmx ) создается как обычно, относительно шустро.

"Методом тыка" установлено, что в отсутствие внешних ключей модель создается мигом (независимо от типа таблиц - InnoDB или MyISAM).

Была мысль, что связи в базе слишком "навороченные".
Однако, последовательно удаляя внешние ключи, было замечено, что чем меньше ключей остается, тем быстрее создается модель. Причем время создания уменьшалось относительно плавно, без резких скачков.

Пробовали также разные релизы MySQL 5 (для Windows, Denwer), разные коннекторы ("родной" MySQL Connector Net, dotConnect).

База данных ежедневно дорабатывается и тратить целый час на создание модели - непозволительная роскошь.

Ничего похожего поиск не дал.
Не знаем что и думать.

Options: ReplyQuote


Subject
Views
Written By
Posted
Entity Framework + MySQL (InnoDB): проблема создания модели имеющейся БД
7703
October 30, 2009 05:44AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.