阻止Advantage Database Server显示/检索活动查询

时间:2017-01-25 12:42:06

标签: advantage-database-server

我正在使用Advantage Database Server 10.存储过程sp_GetSQLStatements可用于返回有关所有活动查询(包括SQL语句)的信息。通过从选项卡" Active Queries"上的Tools菜单中选择Remote Server Info选项,可以在Advantage Data Architect中查看相同的信息。 (Advantage Data Architect也使用存储过程sp_GetSQLStatements。)

有没有办法阻止服务器显示/检索SQL语句以保护我的开发工作?

感谢。

2 个答案:

答案 0 :(得分:0)

您可以使用具有适当安全设置的数据字典,因此没有正确的身份验证,任何人都无法登录。

答案 1 :(得分:0)

我发现至少有部分解决方案来选择数据。使用数据字典我从我想要发出(和隐藏)的SQL语句创建一个视图。此外,我创建了一个存储过程,只包含一个

形式的SQL语句
SELECT * FROM ViewName ORDER BY someColumns;

此语句允许排序(视图中不允许ORDER BY),它是服务器在“活动查询”下显示的唯一一个。视图的“源代码”将不会显示。

使用此变通方法,还可以以高性能(服务器端)方式从复杂视图创建新表:

SELECT * INTO NewTable FROM ViewName;

其他用户只能看到存储过程的SELECT语句,但看不到视图。很明显,对于UDATE和INSERT语句,将公开更多代码。