Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Visual C++/MFC/WTL > Интеграция PHP-MySQL-VC++ |
Автор: Zolex 4.9.2007, 13:27 |
Здравствуйте. У меня есть система, управляющая базой MySQL, написанная на PHP, под web. Система позволяет пользователю делать выборки по полям, добавлять и удалять записи. База содержит около 20 тысяч записей. Необходимо написать приложение на VC++ которое будет выполнять следующие задачи: 1. Скачать полностью базу MySQL с удаленного сервера, импортировать ее в понятный для C++ формат. Осуществить заполнение ListBox по одному из полей базы, причем таким образом, чтобы при листании контрола в RichEdit полях появлялись соответсвующие поля базы. 2. Уметь делать записи в online базу MySQL, синхронизирую ее с базой на локальном компьютере. 3. Уметь удалять данные из online базы MySQL, синхронизирую ее с базой на локальном компьютере. 4. Уметь проводить апдэйт локальной базы в зависимости от изменений удаленной базы. 5. Уметь осуществлять выборки по локальной базе. Вообщем обычная рутинная работа с БД. Вопрос такой. С PHP и MySQL у меня все нормально. Вообщем и с С++ знаком. Даже что-то умею делать, в основном на MFC. Так вот, не посоветуете ли как осуществить интеграцию между С++ и online MySQL? То есть какими средствами осуществлять импорт-экспорт базы? В каком формате хранить ее на локальном компе? Как осуществлять поиск-выборку на локальном компе? Нужно ли для этого иметь на локальном компе какую либо СУБД? Большое спасибо. |
Автор: _hunter 4.9.2007, 15:02 |
дык ты определись что тебе нужно -- интеграция или базу туда/сюда гонять... если второе -- передавай как обычный файл. на локальном компе естественно должна быть СУБД. если первое -- банально пишеш в xml запросы о отсылаеш их серверу (PHP-шному) POST/GET-ом. в ответ получаеш xml с таблицей. |
Автор: Zolex 4.9.2007, 16:49 |
Пожалуй мне надо следующее: 1. Мне надо получить сперва базу с сервера. То есть я так понял я получаю ее как файл а на локальном компе у меня должен стоять MySQL для осуществления запросов по базе из под приложения, написанного на си. Да? 2. Далее мне нужно при изменении базы на локальном компе, менять базу онлайн. Я так понял я это делаю запросами через XML, да? |
Автор: _hunter 4.9.2007, 16:59 |
1 -- да. но непонятен смысл этого шаманства. 2 -- да. |
Автор: Zolex 4.9.2007, 17:18 |
Смысл шаманства в том, что мне может понадобится версия базы без доступа к инету. Допустим раз в сутки некий админ делает изменения в онлайн базе со своего локального компа из под админского приложения. Пользователи же базы, Скачивают так же раз в день обновленную базу себе на компы и пользуются ей до следующего дня, когда они скачают обновленную ночью админом версию. Как то типа того. Ну вообщем смысл я понял. Спасибо. Буду пробовать. Не совсем мне понятно, только как работать с файлом базы. У меня приложение будет оформлено как dialog based. Визард почему-то не дает делать dialog based с поддержкой ODBC. Как быть то? |
Автор: akizelokro 5.9.2007, 14:01 |
Залезь на сайт MySQL и почитай доку. Я пока что не совсем понял, что ты хочешь сделать, и почему твои виндовые юсеры не могут подрубаться к базе MySQL напрямую. Есть либа и инклюды для VC++(5), также есть поддержка ODBC, JDBC и .NET (как прописано в доке). На худой конец, есть PHP для винды. Ты (или администратор) можешь делать backup базы и скидывать файл, где просто его разворачиваешь. Есть вариант репликации (но не знаю, как будут дружить MySQL под Linux с MySQL под Windows). Здесь у тебя проблема в сборке разных изменений от разных твои виндовых юсеров. Или у вас сеть, в которую ты хочешь воткнуть MySQL под Windows? |