![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
legat |
![]()
Сообщение
#1
|
Студент ![]() Группа: Новичок Сообщений: 10 Регистрация: 8.8.2010 Пользователь №: 1940 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Поддерживает ли SQLite хранимые процедуры?
Если да, то как средствами Qt их вызвать? Если нет, то какими способами этот недостаток можно обойти? |
|
|
DEADHUNT |
![]()
Сообщение
#2
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 430 Регистрация: 15.4.2009 Пользователь №: 686 Спасибо сказали: 26 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Iron Bug |
![]()
Сообщение
#3
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: ![]() ![]() ![]() |
я завтра посмотрю на работе, как я это реализовывала. тут дома у меня нет кода.
суть в том, что там можно организовать вызов сишной процедуры. регистрируются входы и символические имена и при запросах можно обращаться к ним, как к хранимым процедурам. ну а так, SQLite - оперсорц, там всё возможно. |
|
|
Iron Bug |
![]()
Сообщение
#4
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: ![]() ![]() ![]() |
Вот, добралась до работы.
В сишном интерфейсе SQLite есть подгружаемые SQL функции. В общем, рекомендую посмотреть вот это для информации: http://www.sqlite.org/c3ref/create_function.html Далее, используется примерно так:
пример вызова созданной функции в запросе:
При выполнении запроса на каждую запись будет вызвана функция LogErrorCheck и значение, возвращаемое через context.SetResult будет подставлено вместо тега ERROR. P.S. у меня использован wxSQLite, но с обычным SQLite то же самое будет. просто вызовы маленько по-другому будут оформляться. Сообщение отредактировал Iron Bug - 10.8.2010, 9:31 |
|
|
Iron Bug |
![]()
Сообщение
#5
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: ![]() ![]() ![]() |
Ради эксперимента написала тестовую реализацию только через стандартный sqlite3 интерфейс.
Если кому интересно, то вот: Раскрывающийся текст
Сообщение отредактировал Iron Bug - 10.8.2010, 11:54 |
|
|
Алексей1153 |
![]()
Сообщение
#6
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: ![]() ![]() ![]() |
пригодится, спасибо ) Прям мануал получился
|
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 17.2.2025, 2:22 |