|
|
|
Entity Framework + MySQL (InnoDB): проблема создания модели имеющейся БД
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Наткнулись командой на следующую проблему. Имеется БД 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). База данных ежедневно дорабатывается и тратить целый час на создание модели - непозволительная роскошь. Ничего похожего поиск не дал. Не знаем что и думать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2009, 11:01 |
|
||
|
Entity Framework + MySQL (InnoDB): проблема создания модели имеющейся БД
|
|||
|---|---|---|---|
|
#18+
а в community MySql не пробовали отписать? возможно этой проблеме есть решение, полазайте на их форуме, посмотрите чего пишут... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2009, 22:45 |
|
||
|
Entity Framework + MySQL (InnoDB): проблема создания модели имеющейся БД
|
|||
|---|---|---|---|
|
#18+
ок :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2009, 15:10 |
|
||
|
Entity Framework + MySQL (InnoDB): проблема создания модели имеющейся БД
|
|||
|---|---|---|---|
|
#18+
Пробовал искать, писать, спрашивать на разных форумах... Даже не знаю в чем может быть проблема. А есть ли здесь кто-нибудь, использующий в работе связку MySQL(InnoDB) + Entity Framework? Не поможете ли? 1. поделитесь, пожалуйста структурой базы данных (должно быть достаточно много (25-100) взаимосвязанных между собой таблиц), для которой генерация модели происходит достаточно быстро; 2. я выложу структуру базы данных, и попробуйте, пожалуйста, у себя сгенерировать модель по структуре нашей базы данных. Заранее спасибо! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2009, 08:59 |
|
||
|
Entity Framework + MySQL (InnoDB): проблема создания модели имеющейся БД
|
|||
|---|---|---|---|
|
#18+
http://bugs.mysql.com/bug.php?id=48791 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2009, 11:38 |
|
||
|
Entity Framework + MySQL (InnoDB): проблема создания модели имеющейся БД
|
|||
|---|---|---|---|
|
#18+
Никакой реакции, кроме проверки бага, от MySQL пока нет... Неужели кроме нас никто не использует MySQL в связке с Entity Framework? Мы, значит, пионЭры? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2009, 10:49 |
|
||
|
Entity Framework + MySQL (InnoDB): проблема создания модели имеющейся БД
|
|||
|---|---|---|---|
|
#18+
Кстати, может быть следующая информация поможет вам помочь нам разобраться в сложившейся ситуации? ;) Мы попробовали использовать "edmgen.exe" (в MSDN есть немного информации по этому файлу) для анализа базы данных MySql (в конце сообщения приводятся использованные инструкции командной строки). Это позволило нам получить стандартные для Entity Framework файлы: *.csdl, *.msl, *.ssdl. В базе было больше 130 таблиц со связями, но результаты были получены в течение нескольких секунд!!! Таким образом частично проблему удалось обойти стороной. Тем не менее, мы пока не знаем, каким образом из этих файлов можно автоматически получить файл модели *.edmx для последующего использования в проекте. Будем признательны за совет по решению этой проблемы! :) ______________________________________________________________________ "%windir%\Microsoft.NET\Framework\v3.5\edmgen.exe" /mode:FullGeneration /project:Test /provider:MySql.Data.MySqlClient /c:"server=localhost;User Id=root;Password=pass;Persist Security Info=True;Connect Timeout=300000;Default Command Timeout=300000;database=test" /entitycontainer:TestEntities /namespace:TestModel /language:CSharp "%windir%\Microsoft.NET\Framework\v3.5\edmgen.exe" /mode:EntityClassGeneration /incsdl:.\Test.csdl /outobjectlayer:.\Test.Objects.cs /language:CSharp ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2009, 09:08 |
|
||
|
|

start [/forum/topic.php?fid=17&fpage=65&tid=1351588]: |
0ms |
get settings: |
10ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
15ms |
get forum data: |
4ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 237ms |
| total: | 395ms |

| 0 / 0 |
