Страница 1 из 1

Доступ к базе через ODBC

СообщениеДобавлено: 21 фев 2011, 16:33
Popov Vitaly
Доброго времени суток.

Есть необходимость подключиться к базе СБИС (версия 1.9) по ODBC (Pervasive 10). Обычная пустая база (из чистой установки СБИС, без пользователей и пр.) подключается, т.е. Jinnee обновляет DDF файлы. Но есть рабочая база, в которой есть пользователи и у которой есть так называемый owner. При попытке обновить DDF файлы на такой базе (после авторизации с использованием учетных данных СБИС а потом самого первазива) выскакивает ошибка "Ошибка 7 при вызове PvDropTable". Подскажите как обойти проблему.

СообщениеДобавлено: 24 фев 2011, 10:02
Тюкин Вадим
Сейчас есть проблема - нельзя обновить ddf файлы для базы, на которую установлен пароль(owner), решается. Пока можно обойти так - через сбис снять пароль с базы, обновить ddf и снова установить пароль.

СообщениеДобавлено: 25 фев 2011, 16:44
Popov Vitaly
Спасибо за ответ. А не подскажете как снять пароль owner?

СообщениеДобавлено: 28 фев 2011, 09:55
Тюкин Вадим
В сбисе задача "Администратор"-> меню "Пользователи "-> пункт "Удалить пароль базы данных".

СообщениеДобавлено: 03 мар 2011, 12:32
Popov Vitaly
Это в какой версии СБИС? В 1.9 не могу такого найти...

А как в 1.9 ?

СообщениеДобавлено: 03 мар 2011, 12:46
Плотников Константин
Да, и мне интересно... А как в 1.9 это сделать... Человек же писал про 1.9...

СообщениеДобавлено: 03 мар 2011, 17:29
Тюкин Вадим
Не обратил я внимания то, что 1.9, там все сложнее. В 1.9 пароль на базу не снять, но обновить ддф на десятом первасиве можно так:
1) переносим все файлы кроме словарей из базы куда-нибудь
2) конвертируем базу для первазив (получаем пустую базу того же формата, какой был)
3) обновляем ддфки
4) удаляем из базы все, кроме словарей и ддф
5) возвращаем в базу все, перенесенное из нее на первом шаге

Чтобы пользователь мог через sql работать с таблицей, нужно ему дать права на эту таблицу, например так: GRANT ALL ON "имя таблицы в первазиве без кавычек" "пароль базы(owner) без кавычек" TO "имя пользователя в первазиве без кавычек". Owner'ра в 1.9 можно посмотреть тут: Услуги->База данных->Пользователи (снизу справа написан пароль от базы)

А как, чтоб не смотреть?

СообщениеДобавлено: 05 мар 2011, 12:10
Плотников Константин
У нас стоит задача автоматизировать "ночной" перенос данных в систему бизнес-аналитики... Одна из проблем где или как программно узнать пароль Owner, чтобы сохранить его, например, в файле. При сохранении таблицы "Пользователи" поле "@Owner" пустое.

СообщениеДобавлено: 05 мар 2011, 13:16
Тюкин Вадим
Чтоб не смотреть - никак. Можно, разве что, руками записать в файл пароль, и менять его там при добавлении\удалении пользователей(он при этих операциях меняется).

А может алгоритмом...

СообщениеДобавлено: 22 сен 2011, 15:49
Плотников Константин
А может алгоритмом поделитесь, как формируете код Owner? Есть ли возможность его реализовать?

СообщениеДобавлено: 27 сен 2011, 14:32
Тюкин Вадим
Нет, извиняйте, алгоритм дать не могу.