Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

C# и MySQL - ваши предложения и рекомендации

9.7K
03 января 2012 года
Vitamant
228 / / 07.02.2011
Доброго времени суток!

Подскажите - как сейчас цивилизованные люди общаются с MySQL из C#?
Естественно, ручной режим с использованием текстовых запросов не интересует. :)

Если ничего удобного и ленивого нет, взгляните, пожалуйста, на мое решение:
http://www.mediafire.com/?d2wffwoyq0yxha6

Там несколько базовых классов и расписанный кусок, описывающий нативную бд information_schema. Пользоваться, на мой взгляд, довольно удобно. Чего не скажешь про этап ее описания и громоздкие, вероятно далеко не эффективные базовые конструкции. В связи с чем прошу прокомментировать, дать ценные советы по оптимизации.

Хочется либо привести сие безобразие в человеческий вид (для дальнейшего использования в работе, написания механизмов обновления, вставки, транзакций), либо заиметь достойную альтернативу с возможностью задавать отношения с перекрестными ссылками (как это сделано у меня).
277
03 января 2012 года
arrjj
1.7K / / 26.01.2011
Цитата: Vitamant
Доброго времени суток!

Подскажите - как сейчас цивилизованные люди общаются с MySQL из C#?
Естественно, ручной режим с использованием текстовых запросов не интересует. :)

Если ничего удобного и ленивого нет, взгляните, пожалуйста, на мое решение:
http://www.mediafire.com/?d2wffwoyq0yxha6

Там несколько базовых классов и расписанный кусок, описывающий нативную бд information_schema. Пользоваться, на мой взгляд, довольно удобно. Чего не скажешь про этап ее описания и громоздкие, вероятно далеко не эффективные базовые конструкции. В связи с чем прошу прокомментировать, дать ценные советы по оптимизации.

Хочется либо привести сие безобразие в человеческий вид (для дальнейшего использования в работе, написания механизмов обновления, вставки, транзакций), либо заиметь достойную альтернативу с возможностью задавать отношения с перекрестными ссылками (как это сделано у меня).



1) Цивилизованные люди из C# общаются с MSSQL :trollface:
2) Чтонибудь типа linq для mysql (dblinq например)

9.7K
04 января 2012 года
Vitamant
228 / / 07.02.2011
1) MsSQL платный. :)
2) dblinq сырой и древний. :)
341
04 января 2012 года
Der Meister
874 / / 21.12.2007
Есть реализация активной записи SubSonic на шаблонах T4, поддерживающая и MySQL, в том числе (LINQ канает).
20K
04 января 2012 года
sem2711
124 / / 23.09.2009
Цитата: Vitamant
1) MsSQL платный.


Редакция Express бесплатная, идет с полным набором инструментов (более 900 МБ) и имеет ограничение по размеру БД 10 ГБ. Неужели вам потребуется больше? :)

9.7K
04 января 2012 года
Vitamant
228 / / 07.02.2011
Der Meister
Спасибо, погуглю.

sem2711
К сожалению, да. Кроме того, проект предполагает быть не только большим, но и многопользовательским, а экспресс поддерживает не больше 1Гб оперативки и не больше одного процессора.
В остальном, MsSQL меня более чем устраивает. :) С удовольствием перейду на нее с MySQL, если она вдруг станет бесплатной. :)
9.7K
04 января 2012 года
Vitamant
228 / / 07.02.2011
Der Meister
Погуглил. С трудом нашел. А можно какой-нибудь пример использования на практике?
Примеры которые нашел просты и скучны до безобразия. Залез в шаблоны. Понравилось наличие всяких фенечек касательно безопасности имен (удаление\замена спец.символов). Но я не увидел там перекрестных ссылок (тобишь, когда элементы одной таблице сопоставлены с элементами другой таблицы, и ссылки из обоих указывают на один и тот же объект, и его изменение приводит к изменениям в обеих таблицах), а это жизненно важно. Ручками рисовать select-from на каждый такой случай не хочется - мой вариант куда симпатичнее (по прежнему жду рекомендаций по исправлению, ибо он монстроузен и, вероятно, быдлокоден).

P.S. Опять же, как я понял проект был заброшен в 2010ом году.
341
04 января 2012 года
Der Meister
874 / / 21.12.2007
Цитата: Vitamant
Но я не увидел там перекрестных ссылок (тобишь, когда элементы одной таблице сопоставлены с элементами другой таблицы, и ссылки из обоих указывают на один и тот же объект, и его изменение приводит к изменениям в обеих таблицах), а это жизненно важно.

А-а-а... Кэширование? В Active Record/Table его действительно нет. Это основная фича. :)

9.7K
04 января 2012 года
Vitamant
228 / / 07.02.2011
Цитата: Der Meister
А-а-а... Кэширование? В Active Record/Table его действительно нет. Это основная фича. :)


Печально...
С другой стороны... так ли оно нужно... Можно ведь передать ссылку на таблицу, и сделать свойство с linq-запросом внутри... ммм... заманчиво. ^^

Блин, но все равно мне упорно не нравится то, что я пока видел/щупал. >_< Как-то все слишком громоздко и неудобно, с кучей инфраструктурного кода... (в этом весь SQL >_>)... Или я просто не умею толком работать с БД... Хочется магии. =\

277
04 января 2012 года
arrjj
1.7K / / 26.01.2011
Тут реализация внешних зависимостей предложена.
9.7K
04 января 2012 года
Vitamant
228 / / 07.02.2011
Цитата: arrjj
Тут реализация внешних зависимостей предложена.


Простенько и со вкусом! Спасибо! :)
Правда, теперь я уже сомневаюсь в необходимости кэширования... >_> Ладно, по ходу дела разберусь как будет лучше. Еще раз спасибо!

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог