一、grant授权
grant 权限 on 表名(列名) to 用户 with grant option;
或者:grant 权限 on 数据对象 from 数据库用户;
权限根据用户需求可以设置多个
一般的权限有:select,update,insert,delete
例:授予user用户对表student的查询权限,在管理员命令下执行
grant select on student to user with grant option
如果此处未对user授予查询权限,则select * from student查询不成功。
二、回收权限revoke
revoke 权限 on 数据对象 from 数据库用户名
例:回收用户user对表student表的查询
revoke select on student from user;
数据对象可以是表名或列名
三、Oracle同义词--synonym
1.同义词类型
私有同义词:synonym只能在其内模式中访问,不能与模式内的对象同名
公有同意词:public synonym可以被所有数据库用户访问
create or replace public synonym 同义词名 for 同义词所指的内容
2.删除同义词synonym
drop (public)synonym 同义词名
四、在java中的框架中,dao层进行sql语句拼接的时候会用到,“=:”的的用途?
1、防止sql注入
未防止sql注入的情况,通常在sql语句组装的时候,不会直接传值。
通过”=:变量名“的方式,在具体调用的时候传入参数,是防止sql注入的写法
2、提高性能
五、操作视图
1.创建视图
1)create [or replace] [{force|noforce}] 视图名称
as
select 查询语句
[with read only constraint]
2)简单语法
create or replace view 视图名称 as select * from 表名;
2.查询视图
select * from 视图名称;
3.修改视图
通过or replace 重新创建即可
4.创建一个只读视图
create or replace view 视图名称 as select empno,enamel from empty with read only;
语法解析:
1.or replace :如果视图已经存在,则替换旧视图。
2 force :即使基表不存在,也可以创建该视图,但是该视图不能正常使用;当基表创建成功后,视图才能正常使用。
3.noforce :如果基表不存在,无法创建视图,该项是默认选项。
4.with read only :默认可以通过视图对基表执行增删改操作,但是有很多在基表 上的限制(比如:基表中某列不能为空,但是该列没有出现在视图中,则不能通过视图执行insert操作), with read only说明视图是只读视图,不能通过该视图进行增删改操作。现实开发中,基本上不通过视图对表中的数据进行增删改操作。