上节讲的创建的software用户能否访问其他用户的表呢
1,创建software用户,密码设置为system
create user software identified by system
2,要想software登录(连接数据库)需要给其权限
grant create session to software;
grant connect to software;
grant resource to software;
3,使用software用户登录
conn software/system@orcl
3,software创建表
create table users(id number);
4,插入一条数据
insert into users values(1);
查看
select * from users;
software只能看见自己的表无法看到其他用户的表
切换为system给其授权
grant select on scott.emp to software;
再切换为software用户即可有select权限
select * from scott.emp;
因为只授权了其中一个表就无法查看其他表
方案(schema)
1,scott用户能够查看emp表,但是software用户不可以
问题:scottt用户与software位于同一个数据库实例(orcl),为什么不能查看
当用户创建好后,如果该用户创建了一个数据对象(表等),此时dbms就会创建一个对应的方案与改用户对应,并且
该方案的名称与该用户一致。因此得出结论system和scott都有自己的方案。
2,能不能用不用用户创建相同的表,可以
使用software用户登录可以创建emp表
select * from scott.emp;