SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 08.10.2010 23:14:41

lexen
Участник
Зарегистрирован: 08.10.2010
Сообщений: 3

Прошу помощи по теме - external stored procedure mysql c++

Уже неделю мучаю единственный найденный мной материал по данной теме, а именно:
procedure.cc, procedure.h, sql_analyse.cc, sql_select.cc (как гласит оригинальный man это единственное что есть из инфы).
Может у кого есть опыт написания процедур (на c/c++), или есть ещё какая-нибудь информация. Буду очень рад если поможете.

Неактивен

 

#2 09.10.2010 01:15:02

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Прошу помощи по теме - external stored procedure mysql c++

В мане есть еще ссылка на dbforge, на котором очень
неплохо описаны постпроцедуры в MySQL.

Если Вы опишете свою задачку, будет легче отвечать на вопросы smile

Неактивен

 

#3 09.10.2010 22:20:08

lexen
Участник
Зарегистрирован: 08.10.2010
Сообщений: 3

Re: Прошу помощи по теме - external stored procedure mysql c++

paulus спасибо за ответ и ссылку, пробую.

По задаче, необходимо производить выборку (по различным параметрам) из базы, и по полученным результатам - id клиентских машин, проверять их на наличие online и синхронность (за синхронностью следит клиентское ПО) их локальных баз с центральной MySQL. Как то так, если нужно то могу более детально.
От хранимой процедуры на C++ хочу:
- соединение с базой MySQL для выборки и вставки данных;
- работы с socket.

И ещё вопрос - можно ли такие процедуры использовать просто вызовом CALL, и возвращать несколько rows, или применять такие процедуры можно только для обработки результатов SELECT FROM?

Неактивен

 

#4 09.10.2010 22:53:18

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Прошу помощи по теме - external stored procedure mysql c++

А почему Вы хотите это делать это, встраивая код в MySQL, а не просто написав
приложение, которое использует MySQL для хранения данных?

В MySQL Вы можете делать пользовательские функции (ищите примеры по словам
mysql udf) или постобработчики-процедуры. Но для Вашей задачки правда лучше
написать обычное приложение.

Неактивен

 

#5 09.10.2010 23:37:35

lexen
Участник
Зарегистрирован: 08.10.2010
Сообщений: 3

Re: Прошу помощи по теме - external stored procedure mysql c++

paulus, на данный момент так и сделано.
Написано отдельное приложение на с++. Но есть проблема - вся эта конструкция используется для поиска (подключенных синхронных клиентов), как с тех же клиентов (C# CE - тут проблем, кроме накладных расходов на парсинг строки результатов, нет), так и с сайта - PHP с запуском процессов (приходится следить за ними) - последний вариант очень не устраивает как по скорости работы так и по прожорливости (разбор строки результата, да и запуск внешних процессов на PHP - мягко говоря плохой интсрумент).
Ну и плюс очень хочется унифицировать поисковую машину как для PHP, так и для C#.

Правильно ли я понял - что только для post обработки, не для вызова через CALL?

Отредактированно lexen (09.10.2010 23:38:30)

Неактивен

 

#6 10.10.2010 14:31:03

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Прошу помощи по теме - external stored procedure mysql c++

А почему не сделать постоянно работающее приложение на С++, которое бы поддерживало
актуальными таблички доступности машинок, а PHP бы их просто читал? Ну или, если нужно,
чтобы данные были актуальными на самый последний момент, почему не ходить из PHP в
C++, и не забирать данные из него? Ну и, наконец, зачем Вам PHP, если Вы умеете писать на
С++? Можно же сделать fastcgi + code reuse.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson