|
|
1
0
首先,您的模式不应该是dev。dev是用户或角色。 您的模式名称应该与数据内容相关(如帐户或销售) 其次,考虑您还是客户将决定模式名。假设你有一种叫燧石的产品。您可以决定模式名应该是Flintstone。但是,您的客户可能希望运行两个产品实例(例如一个用于本地销售,另一个用于国际销售),并使用相同的数据库。所以他们希望fs_local和fs_inter作为模式名。这是你产品的一个特点吗? 接下来,决定应用程序是否应作为模式所有者进行连接。不这样做有很好的安全理由。例如,模式所有者具有删除表的权限,这通常是应用程序不做的事情,因此,根据最小权限原则,是应用程序不应该做的事情。 通常,我会为应用程序推荐一些模式名称的配置参数,在连接到数据库之后,应用程序应该执行“alter session set current_schema='无论它是什么配置文件'”。应用程序数据库用户需要对应用程序模式中的对象具有适当的插入/更新/删除/选择/执行权限。如果应用程序不能这样做,您可以在数据库中有一个登录触发器。 |
|
|
2
0
Gary不使用dev作为您自己机器上的模式是正确的。在使用Oracle时,我们通常将模式设置为客户机将要命名其模式的内容。但这并不能解决您的问题。您需要做的是在Oracle中创建一个全局别名,将say dev映射到clientschema。您仍然应该重命名您机器上的模式,但这将允许您的模式不同于您的客户机。 |
|
|
maddy · 如何根据oracle SQL中的某一列值进行排名 3 年前 |
|
|
kiric8494 · 显示以元音开头和结尾的城市名称 4 年前 |
|
|
Franz Biberkopf · Oracle:组合子查询和聚合函数 4 年前 |
|
|
BitLauncher · 甲骨文-如何模拟位列和布尔和/或? 4 年前 |
|
|
Arifullah · 如何从oracle中的列中删除特定的初始字符? 4 年前 |
|
|
Anar · Oracle SQL用户定义函数 4 年前 |
|
|
user1312312 · 如何为一组表编写通用触发器? 4 年前 |