网站内容建设怎么写,大连建站费用,义乌互联网公司,甘露园网站建设一、Oracle数据只有一个实例(简单理解就是Oracle 只能建立一个数据库#xff0c;不像MySQL#xff0c;它下面可以创建N个库)#xff0c;那么Oracle是根据用户灵活去管理的#xff1b;这点读起来、理解 起来也不那么难#xff0c;但是除非自己亲自实现一把才理解深入点不像MySQL它下面可以创建N个库)那么Oracle是根据用户灵活去管理的这点读起来、理解 起来也不那么难但是除非自己亲自实现一把才理解深入点刚接触数据库可能不是很理解这些
二、Oracle中可以建立多个用户那么这些用户刚建立是得授权的不让没有权限做任何事情(举个栗子用户 ‘AA’ 是授权的DBA用户此用户下面有 N 张表如果再创建 一个用户 “BB” 那么 “BB” 是没有权限读取 “AA” 中表的有人可能就会说给他授权不就行了么给 “BB” 授予超级权限抱歉那也不行你同样么有机会访问 “AA” 中的表的你虽然授予了超级权限那是在你名下的在 “AA” 起不了作用)是不是很是揪心同一个库下两个 超级用户 还不能访问。
三、是不是在 “BB” 用户下在把 “AA” 下的表 复制一遍不就好了没错这样也能实现但是这样会浪费很多资源而且不能同步数据这种情况下 同义词 就有用武之地了 其实 同义词 也相当于一个视图 可以这个么理解可以进行对表的 增删改查(省资源数据同步)
四、注意事项 0》接上面的举例子新建的用户 “BB” 要在不复制资源的请款下建立一个同义词 要可以对 “AA” 下的表 操作(除了删除)
建立
create 【public】 synonym 同义词名称(一般可以与表名不同这样不容易混淆) for AA.table_name;
--在当前用户下建立一个同义词(去同义“AA”中的表table_namepublic的是可选参数本人建议尽量建立公用的 同义词) 删除DROP 【public】 SYNONYM 同义词名称;
---------此处特别注意 关键字 public 的存在--------
查看
select * from user_synonyms sy where sy.synonym_name A_CODEMAPPING; --查看私有的同义词自己看到自己创建的
select * from all_synonyms sy where sy.synonym_name A_CODEMAPPING; --可以查看到 某某创建的 公共的 同义词 参看信息中包括同义词拥有者表拥有者是否public的等信息
1》同义词 分为私有的 和公共的两种
私有的 也只有 本用户使用包括别的用户查不到 用户 “BB” 有这个同义词(这点很重哟奥)
共有的 可以被其它的任何用户使用 也可以被人家查到看到这个同义词当然最重要的也可以被别的用户删除
什么是同义词同义词相当于是对象的小名作用是缩短对象的长度便于书写与访问。
同义词的创建 假设有表t_student如图所示 为表t_student创建同义词stdcreate synonym std for t_student
此时使用同义词std查询表t_student中所有数据 select * from std
查询结果
删除同义词 drop synonym std