我有几个客户,每个客户都运行我的 ISQL (SE) 桌面应用程序的自定义版本。我想用瘦客户端 WinTerm 替换他们的桌面应用程序,连接到云(SuSE Open 或 RedHat 服务器上的 My ISQL 应用程序)。如果可以做到这一点,我希望每个客户都使用我的应用程序的一个标准化版本来简化更新和支持。但是,我不确定设计数据库的最佳方法是什么。每个客户应该有自己的 database.dbs (DBPATH=) 还是有更好的设计?
问问题
86 次
1 回答
1
您有两种选择,其中一种您已经考虑过:
- 每个客户都有自己的标准名称数据库。
- 每个客户都有自己的数据库,每个数据库都有一个单独的名称。
选项 1 的优点是您现有的代码将基本保持不变;您只需确保 DBPATH 的设置对每个客户都是正确的。缺点是您还需要为每个客户创建一个单独的目录。但是,这有其优点;如果每个客户都有自己单独的主目录,并且他们的数据库位于该目录中,您可能更容易阻止客户 A 看到客户 B 生成的任何文件(反之亦然)。
选项 2 的优点是您可以将所有客户的数据库放在一个目录中。如前所述,这很容易让客户 A 更容易看到他不应该看到的属于客户 B 的东西。您还必须确保每次运行命令时都覆盖默认数据库名称 - 无论sperform
是sacego
或其他任何东西。
在这两者之间,我会选择选项 1(在不同目录中使用通用名称的单独数据库),在客户之间设置刚性墙。每个客户都有自己的用户名和组,目录的权限将避免任何形式的公共访问。他们仍然可以使用单个 INFORMIXDIR 以及您的相关表单和报告。
于 2011-06-24T02:31:01.943 回答