по многим причинам, мы защищаем нашу Интеллектуальную собственность на ее самом большом, и мы уже запутываем и обертываем нашу логику. Все работает нормально.Скрыть sql с точки зрения
У нас есть забота о мнениях. В некоторых случаях мы предоставляем нашим клиентам некоторые мнения, исходя из их конкретных потребностей. Таким образом, мы можем предложить им правильные результаты. В противном случае они иногда пытаются создать свой собственный sql, и они получают неправильные ответы.
Возможно ли заполнить материализованное представление на основе пакета или процедуры? Я понимаю, что только функция может что-то возвращать, но я, возможно, что-то упускаю. Моя фактическая альтернатива - заполнить таблицу с помощью процедуры, но мне это неудобно.
Мы на самом деле с помощью Oracle 11
Любая идея приветствуется. Благодаря!
Я думаю, что это нормально, когда поставщик защищает свой код и завершает пакеты и процедуры. Но содержание данных в основном принадлежит клиенту, поэтому он должен уметь его видеть. Я предполагаю, что база данных размещена самим клиентом, там у вас также есть администратор базы данных и администратора SYS. В любом случае, они могут читать каждую таблицу/просмотр, поэтому будет сложно скрыть данные от них. –
Нет, вы не можете буквально (используя утилиту обложек) обернуть исходный текст представления. Утилита wrap завершает только исходный текст PL/SQL (за исключением анонимного блока PL/SQL и триггеров). Технически вы можете скрыть этот оператор select, поместив его в конвейерную функцию, оберните эту функцию и затем создайте представление, основанное на этой конвейерной функции. Но это будет ужасно медленным и станет еще медленнее, поскольку сложность запроса и количество извлеченных данных будут возрастать. –
Да, это их данные, но это сложная система. Цель состоит в том, чтобы предоставить им правильные данные и защитить наш IP-адрес. Благодарю. (и я не понимаю, почему я получаю -1 на этом) –