11 / 8 / 0
Регистрация: 17.02.2012
Сообщений: 88
1

Обсуждение статьи "Совместная работа MS Access и сервера MySQL" (Сергей 1980)

29.03.2012, 11:36. Показов 3584. Ответов 27
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Цитата Сообщение от Сергей1980 Посмотреть сообщение
[B]
Все. Источник для связки акса готов.
Теперь открываете аксесс и делаете следующее:

Все, вы прилинковались. Успехов. Далее работаете как в классике. Эксперементируйте. Не забывайте включать сервер перед работой акса и мускула. Осторожней с запросами на изменение. Иногда синтаксис не совпадает. Приятного аппетита.
Вложение 131689
Вы пропустили еще некую процедурку при связи таблиц по указанному полю(для обеспечения целостности данных)(см. приложенный рисунок)
Для чего ето делается мне не понятно.
Миниатюры
Обсуждение статьи "Совместная работа MS Access и сервера MySQL" (Сергей 1980)  
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.03.2012, 11:36
Ответы с готовыми решениями:

Обсуждение статьи Совместная работа MS Access и сервера MySQL
Обсуждение статьи Совместная работа MS Access и сервера MySQL Not Found The requested URL...

Совместная работа MySQL (удаленно) и MS Access
Здравствуйте все! Написал базу в Аксессе. Далее будет только про MySQL и почти ничего про Аксесс....

Совместная работа в excel и плановая перезагрузка сервера
всем привет, проблема вот такая: файловый сервер со всеми документами и базой 1с по ночам делает...

Совместная работа Oracle SSO Server и стороннего web сервера
Проблема состоит в следующем: нужно с одной web страницы передать на oracle`вскую параметр, который...

Совместная работа Oracle SSO Server и стороннего WEB сервера
Проблема состоит в следующем: нужно с одной web страницы передать на oracle`вскую параметр, который...

27
2092 / 1168 / 39
Регистрация: 05.11.2009
Сообщений: 1,605
29.03.2012, 11:42 2
Тема Написание статей только для самих статей, их обсуждение выносим в отдельные темы.
В этой теме обсуждаем статью Сергея 1980 "Совместная работа MS Access и сервера MySQL
0
11 / 8 / 0
Регистрация: 17.02.2012
Сообщений: 88
29.03.2012, 11:43  [ТС] 3
Прошел я все процедуры и этапы. В моей базе в ексесе появились значки с названиями таблиц видимо указывающие на то что связь с сервером установлена.(см. приложенный рисунок)

Вопрос: теперь мне не понятно как вообще с этим работать? как через оболочку аксеса управлять таблицами в базе денвера? че делать то надо? куда тыкаться?
Как редактировать запросы? и т.д.
Миниатюры
Обсуждение статьи "Совместная работа MS Access и сервера MySQL" (Сергей 1980)  
0
Эксперт MS Access
7395 / 4532 / 295
Регистрация: 12.08.2011
Сообщений: 14,016
30.03.2012, 02:44 4
Цитата Сообщение от Menred Посмотреть сообщение
как через оболочку аксеса управлять таблицами в базе денвера?
А как через оболочку Акцесса управлять таблицами в базе Акцесс?
0
11 / 8 / 0
Регистрация: 17.02.2012
Сообщений: 88
30.03.2012, 07:57  [ТС] 5
Зачем задавать вопросы наводящие на глупость и незнание того кому задается вопрос если ето и так потенциально понятно.
Ну не улавливаю я доконца как там че работает...
0
545 / 375 / 16
Регистрация: 17.12.2009
Сообщений: 985
30.03.2012, 10:18 6
Цитата Сообщение от Menred Посмотреть сообщение
Вопрос: теперь мне не понятно как вообще с этим работать? как через оболочку аксеса управлять таблицами в базе денвера? че делать то надо? куда тыкаться?
Как редактировать запросы? и т.д.
Все достаточно просто. Все запросы работают корректно. НО! Синтаксис SQL используйте из MySQL. В частности вместо таких кавычек " " рекомендую использовать такие ``.
Но если хотите -также в мускуле есть птица (галочка) которая позволяет жрать синтаксис T-SQL . Найдите ее в настройках сервера и активируйте.
Что еще, - не используйте ссылки , такие как Forms![Форма1]... Все переменные передавайте в виде ....WHERE [поле1]="& имя_переменной.

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

Добавлено через 6 минут
Цитата Сообщение от Menred Посмотреть сообщение
Вопрос: теперь мне не понятно как вообще с этим работать? как через оболочку аксеса управлять таблицами в базе денвера? че делать то надо? куда тыкаться?
Как редактировать запросы? и т.д.
У вас обычная линковка таблиц, как и в аксессе. Это значительно упрощает жизнь. Работайте как и раньше работали с аксессом. Запросы можно редактировать в phpmyadmin. Зайдите туда и посмотрите. Там есть некое подобие конструктора запросов,как и в аксессе. У меня сейчас к сожалению на работе нет возможности поюзать мускул, поэтому более детально помощб оказать не могу.
2
0 / 0 / 0
Регистрация: 02.09.2013
Сообщений: 9
03.09.2013, 00:54 7
Здравствуйте, Сергей. У меня такая же проблема! Связь-то установилась. Но делать в этих таблицах ничего невозможно! Они как будто заблокированы (в Access). Никаких изменений не внести. На сервере в MySQL можно вносить изменения, они потом появляются в Access. Но мне очень важно, чтобы именно через Access вносить изменения в MySQL. А этого-то и не получается. Перерыла весь интернет, нашла много ссылок, как связать Access с MySQL, читала Вашу статью и другие, все делала по инструкции, но увы. Может быть у меня Access слишком старый - 2003. Но Вы в Вашей статье в самом начале пишите, что для 2003 работает.
Вот Вы тут пишите "работайте как и раньше работали с аксессом". Так в этом-то и проблема, что не работает как раньше. Меня даже не так запросы волнуют, с этим я разберусь, сколько внесение и обновление данных в таблицах. Просто беда какая-то. Помогите, пожалуйста.
Заранее спасибо.
0
545 / 375 / 16
Регистрация: 17.12.2009
Сообщений: 985
03.09.2013, 01:13 8
Все очень просто. По первости у меня тоже возникал данный вопрос. Поделюсь страшной тайной этой и с вами)) вы забыли установить ключевые поля в таблицах на сервере MySQL )) зайдите в phpmyadmin и проставьте для нужных вам полей значение PK (primary key то бишь, первичный ключ. Ну или просто уникальный индекс) если это уникальное поле является счетчиком вдобавок, не забудьте выбрать для данного поля аббревиатуру A_I то есть auto increment.
2
545 / 375 / 16
Регистрация: 17.12.2009
Сообщений: 985
03.09.2013, 01:24 9
Это тут. Посмотрите на картинке место где ставятся ключи и нажмите напротив нужного поля.
Обсуждение статьи "Совместная работа MS Access и сервера MySQL" (Сергей 1980)
если вдобавок ключ является счетчиком выберите в поле со списком значение для него auto increment. От версии к версии выбор автоинкремента может визуально отличаться. Если поля со списком нет, то найдите выражение A_I и поставьте галочку . Потом естественно сохраните изменения . После того как проставите ключи по всем таблицам, они у вас стразу станут в аксессе редактируемыми.
1
545 / 375 / 16
Регистрация: 17.12.2009
Сообщений: 985
03.09.2013, 01:29 10
Не отрываясь продолжая работать как раньше в аксесс, одним глазом посматривая в сторону полноценного веб интерфейса, созданного на MySQL , Php, JavaScript и jquery , HTML и CSS ))
2
0 / 0 / 0
Регистрация: 02.09.2013
Сообщений: 9
03.09.2013, 03:42 11
Спасибо Вам большое!!! Я буду пробовать. Исправлять .

Добавлено через 50 минут
Цитата Сообщение от Сергей1980 Посмотреть сообщение
Это тут. Посмотрите на картинке место где ставятся ключи и нажмите напротив нужного поля.
Вложение 304034 если вдобавок ключ является счетчиком выберите в поле со списком значение для него auto increment. От версии к версии выбор автоинкремента может визуально отличаться. Если поля со списком нет, то найдите выражение A_I и поставьте галочку . Потом естественно сохраните изменения . После того как проставите ключи по всем таблицам, они у вас стразу станут в аксессе редактируемыми.
Еще раз спасибо! Как говорится "Урра, заработало". Теперь хоть можно отладить базу нормально - все эти ключи, поля и т.п., чтоб потом эта база была основой для справочного сайта. Но вот новая проблема появилась. В этих связанных таблицах вносить-то и изменять информацию можно, но, например, выпадающие списки исчезли, и вернуть их нельзя. Т.е., каждую новую запись надо просто вручную вносить, вместо того, чтобы пользоваться в некоторых полях удобными подстановками. Конструктор пишет, что изменения свойств невозможны (наверно это логично, ведь в MySQL у меня нет выпадающих списков). Подтаблицы тоже отключились . Это первое. И второе. У меня получился как бы двойной набор таблиц. Одни, те что созданы изначально. На них все запросы и формы для заполнения созданы. Второй набор таблиц с таким же названием, только цифра 1 к каждой добавилась, - связанные с MySQL. Формы с ними уже не работают. Так вот вопрос. Можно ли как-то все это связать, или придется все формы переделывать под эти новые таблицы. В общем это, конечно, не очень сложно - поменять источники записей в форме на новые. А старые таблицы снести за ненадобностью. Но может быть есть более изящное решение? Связать первоначальные таблицы с новыми. Собственно, ради работоспособности этих форм весь сыр-бор у меня и складывается. Буду очень признательна за подсказку. Или где почитать.
0
545 / 375 / 16
Регистрация: 17.12.2009
Сообщений: 985
03.09.2013, 13:30 12
Те таблицы ,которые не с сервера удаляйте, они больше не нужны. Наверняка у вас при импорте таблиц с сервера MySQL названия таблиц задублировались ,и те которые линковали с сервера заканчиваются на цифру1 в конце каждой. Уберите эти единички. Теперь по поводу выпадающих списков.
Не используйте выпадающие списки на уровне таблиц и запросов. Не создавайте их там никогда. Это нельзя делать с точки зрения нормального базостроения. Создавайте комбобоксы/списки толька на формах. И не будет никаких проблем. Таблицы и запросы это источники данных. А средства вывода- формы и отчеты. Не надо нести на табличную часть аксесса дополнительные нагрузки. Также крайне не рекомендуется использовать расчетные поля в таблицах (в последних версиях аксесса такие возможности появились) и не использовать поля с подстановкой по возможности. Схему данных делайте в каждом конкретном конструкторе запросов свою. Так как если у вас код таблиц в MySQL ISAM то такие таблицы не поддерживают реляционных связей.

Добавлено через 1 минуту
Это как раз и делается для индексации строк таблиц. Если у вас по умолчанию структура таблиц на мускуле проиндексирована, то таких проблем не возникает.
2
0 / 0 / 0
Регистрация: 02.09.2013
Сообщений: 9
03.09.2013, 14:17 13
Да-а-а, век живи, век учись, как говорила моя бабушка, и дураком помрешь. Спасибо, учту про списки. Это ценно, я не знала. Названия да, задублировались с цифорой 1. Признаться, мне в голову не пришло, что решение такое простое - название таблиц привести в соответствие. Фантастика! Все работает. Ну, наверняка еще полезут нестыковки, но это и к лучшему - отладить теперь можно.
Но у меня еще сразу вопрос. Теперь работать с Access можно только при подключенном сервере? Я-то надеялась, что можно поработать удаленно с Access, а потом подключиться, когда надо, и через диспетчер связанных таблиц обновить информацию на сервере. Ну, специфика поставленной задачи такова, что было бы крайне желательно работать раздельно. Или уже теперь все, мертвая сцепка? Оно теперь жаждет подключения . Есть ли какой-то выход?
Я Вам крайне признательна за помощь - уже долгое время топчемся на месте и не можем решить эту задачу. Мы создаем справочный сайт по благотворительным организациям СПб. Работа проводится исключительно волонтерами. Так что Ваши подсказки выводят из тупого отчаяния, что ничего не получится. Спасибо Вам большое.
0
545 / 375 / 16
Регистрация: 17.12.2009
Сообщений: 985
03.09.2013, 17:40 14
Все получится, будьте уверены.
Да, при такой связке как MS Access + MySQL делать репликации стандартными способами не получиться. То есть система будет работать пока сервер включен. Когда сервер отключен будет выскакивать соответствующая ошибка.
По поводу многопользовательского доступа в данную базу:
Если попросите расшарить ваших айтишников данный сервер на возможность доступа из интернета, то появиться возможность работать единовременно любым пользователям с любой точки земного шара. Для этого надо открыть порт 3306 на вход через интернет, и зарегестрировать айпишник сервера, чтобы он пинговался оттуда же. Если у вас данный сервер параллельно является источником данных для сайта , то есть по http уже можно заходить, то это значит,что уже регистрировать айпишник не надо, просто открыть порт 3306 в интернет и все. После этого рассылаете клиентские части аксесса нужным людям которые занимаются заведением и объясняете как они могуть подключиться при помощи MyODBC.
1
0 / 0 / 0
Регистрация: 02.09.2013
Сообщений: 9
03.09.2013, 18:19 15
Мммм... Т.е., только через интернет... Ну что же, в общем вариант хороший, главное, чтоб интернет не отключили .
Да, в конечном варианте, видимо, сервер будет источником данных для сайта. Сейчас пока на локальном отлаживаю, да еще и на флэшке - думала проверить такой вариант, чтобы все изолировано работало. В общем, надо теперь все это переварить .
Так, а клиентские части аксесса - это что-то из разделения базы, да? Я еще не освоила эту часть аксесса. Как-то не было необходимости. Если об этом речь, то пойду осваивать .
Вообще, аксесс хорошая программа. Чего его все ругают? Вон сколько умеет. Я б ни в жизни ни с какими базами не смогла работать - mysql там, еще что-то. Закорючки одни. В аксесс хоть по человечески все написано .
Спасибо, буду дальше штудировать .
0
545 / 375 / 16
Регистрация: 17.12.2009
Сообщений: 985
03.09.2013, 18:42 16
Лучший ответ Сообщение было отмечено как решение

Решение

Аксесс нормальная программа, за один проект,причем написанный за неделю вполне можно получить и 80 и 100 килорублей.Без отрыва от основного рода деятельности на работе, которая никак не связана с программированием. Балуюсь на нем довольно серьезно. Хотя сейчас перехожу на веб программирование.

Ну клиентская часть программы, эта та,которую видит пользователь у себя на рабочем столе в качестве ярлычка в данной ситуации. В вашем случае)
3
1302 / 508 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
03.09.2013, 20:34 17
Цитата Сообщение от Сергей1980 Посмотреть сообщение
Аксесс нормальная программа, за один проект,причем написанный за неделю вполне можно получить и 80 и 100 килорублей
не в обиду аксесу, я вот если честно не понимаю, как нормальная фирма может работать в аксесе. Минусов хватает. Его только в личных целей можно использовать. Еще при этом 100 штук отваливать за разработку. За эти 100 штук можно и нормальную (более серьезную) базу разработать как два пальца. Мелкая фирма не будет сотку платят за базу, а крупной 2 гига это на три часа работы, потом все, места нет
0
545 / 375 / 16
Регистрация: 17.12.2009
Сообщений: 985
03.09.2013, 21:10 18
Не место красит человека, а человек место. Зачастую конторам необходимо решать задачи уже сейчас и денег на Sap,axapta нет еще. В аксессе есть такой инструмент , как мастер переноса на ms SQL server. После использования данного мастера переноса аксесс превращается в полноценную систему, заточенную решать те задачи, которые разработчик вложил еще на стадии написания базы в родном формате mdb. И которая совсем не отличается по функционалу решаемых задач от решаемых в тех же самых озвученных монстрах. Видел сложные реализации складских программ в аксессе, кто то даже написал наподобие 1с бухгалтерии. Преимущество аксесса в том, что он априори дружественен со всем набором офисных программ, которые используют люди в офисе в повседневной жизни. Он более ориентировал именно на пользователя, чтобы он мог по быстрому создать инструмент для решения своей прикладной задачи. Вот захотел я вести статистику и работу по условиям выживания жуков долгоносиков на глубине 3000 метров за полярным кругом ,а программы специальной нету. Просить это реализовать в 1с, sap, axapta ? Там во первых ничего не шарят в области долгоносиков и во вторых никто не нырял на глубину 12 тысяч метров. Но не откажут, цену влепят только космическую ( за привлечение к работе Николая Дроздова- долгоносики, Кусто - ныряние, Беар Грилз- обучение Дроздова , Кусто и долгоносиков выживать на глубине 3000 метров за полярным кругом). Аксесс просто инструмент. Острота его зависит от разработчика. Если инструмент четко решает поставленные задачи, не ломается, дорабатываемый и еще денежку приносит , то ничего в этом плохого не вижу. Кого я в первую очередь на работу возьму, гения который ни хрена не делает и очень капризен, или исполнительного середнячка, который оперативно все вопросы порешает и мне геморроя не доставит. Выберу последнего. Ключевой тег данного ответа - #долгоносики_выжили.
0
1302 / 508 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
03.09.2013, 21:19 19
Цитата Сообщение от Сергей1980 Посмотреть сообщение
Он более ориентировал именно на пользователя, чтобы он мог по быстрому создать инструмент для решения своей прикладной задачи
Во во, я про это и пишу, что для себя позволяет оперативно наладить нужный инструмент для работы сегодня. Но не для БАЗЫ ДАННЫХ. Как базу его нечего рассматривать. Это мое мнение
0
545 / 375 / 16
Регистрация: 17.12.2009
Сообщений: 985
03.09.2013, 21:26 20
Мы тоже инструменты для работы. И база тоже инструмент работы. И начальник - это тоже инструмент более высокого профиля. Наша задача - стать дирижером, кто где может.
0
03.09.2013, 21:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.09.2013, 21:26
Помогаю со студенческими работами здесь

Совместная работа InfoPath2007, Access 2007 между двумя компаниями
Уважаемые коллеги, здравствуйте! Возник вопрос по поводу обмена информацией между двумя...

ОБСУЖДЕНИЕ СТАТЬИ
Ссылка Удалена. Никакого отношения к PHP не имеет. Тема закрыта. ЦВЕТОВЫЕ И ТОНАЛЬНЫЕ ОТНОШЕНИЯ В...

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

Работа с бд MySQL без сервера баз данных
Изучая PHP скрипты, я нашел скрипт, который работает с бд без сервера баз данных. Скрипт и файл бд...

Оптимизация MySQL или почему работа сервера ухудшилась
Добрый день Подскажите пожалуйста по оптимизации MySQL сервера. Или посоветуйте в какую сторону...

Найти названия книг автора, изданных с 1980 года (работа с файлами)
Сведения о книгах включают фамилию автора, название и год издания. Найти названия книг данного...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru