2017-01-25 3 views
0

Я использую Advantage Database Server 10. Хранимая процедура sp_GetSQLStatements может использоваться для возврата информации обо всех активных запросах, включая инструкции SQL. Такую же информацию можно просмотреть в Advantage Data Architect, выбрав опцию «Информация о удаленном сервере» в меню «Сервис» на вкладке «Активные запросы». (Архитектор данных Advantage использует также хранимую процедуру sp_GetSQLStatements).Предотвращение использования сервера баз данных Advantage для получения/получения активных запросов

Есть ли способ сохранить отображение или получение SQL-запросов сервером для защиты моих разработок?

Спасибо.

ответ

0

Вы можете использовать словарь данных с соответствующими настройками безопасности, чтобы никто не мог войти без правильной аутентификации.

+0

Приложение VB.NET уже использует соединение через словарь данных с аутентификацией. Но команды SQL, выданные приложением, отображаются в Data Architect на вкладке «Активные запросы». –

0

Я нашел хотя бы частичное решение для выбора данных. Используя словарь данных, я создаю представление из инструкции SQL, которую я хочу опубликовать (и скрыть). Кроме того, я создать хранимую процедуру, в том числе только одного оператора SQL формы

SELECT * FROM ViewName ORDER BY someColumns; 

Это утверждение позволяет сортировать (ORDER BY не допускается в представлениях), и это только один, который будет отображаться на сервере под «Активные запросы». «Исходный код» представления не будет показан.

Использование этого временного решения можно также создавать новые таблицы из сложных просмотров в производительную (на стороне сервера) способ:

SELECT * INTO NewTable FROM ViewName; 

Другие пользователи будут видеть только ЗЕЬЕСТ хранимой процедуры, но не Посмотреть. Очевидно, что для операторов UDATE и INSERT будет раскрыт более подробный код.