2019-05-17

数据库对象

1.视图(view):

称为虚表,在数据库中不存在实体。视图本质上是对物理表(基表)的一种数据保护。不让无关人员看到一些保密性质的内容。

1.1创建视图:

语法:create or replace view 视图名 as query;

1.2使用视图:

可以像使用表一样使用视图,修改添加数据,通过虚表添加的数据最终存储进基表内,虚表一般只是基表的部分数据。如果基表对未提供字段置null,如基表此字段不能为null,会显示添加失败

2019-05-17_第1张图片

1.3权限管理:

第一个使用plsql的账户是需要解锁的,权限性操作都需要以sysdba来操作。

【1】赋予权限:grant,常用的系统角色权限集合有三个:1.connect:基本的连接;2.resource:程序开发;3.dba:数据库管理;常用数据库对象权限有五个:all on 数据对象名;select on 数据对象名; update on 对象名;delete on 数据对象名;insert into 数据对象名,alter on 对象名;

grant connect ,resource to用户名;grant select on 表明 to 用户名;grant select;insert ,delete on 表名to 用户名1,用户名2.

【2】回收权限:revoke;revoke connect ,resource from 用户名;resource select on 表名  from 用户名;revoke select ,insert ,delete on 表名 from 用户名1,用户名2;

查看用户权限:select * from user_sys_privs;

1.4表


2019-05-17_第2张图片

其他类型:CLOB:最大长度4g;大对象,少使用,一般存在大对象一般的解决方法存入文件地址。blob:存储二进制文件。

再数据库设计时,如要存储大文件    ,一定不要使用CLOB/blob,通用的解决方案都是文件的地址。

1.5表的创建“”:

语法:create table 表名(列属性),还可以使用开发工具生成:

2019-05-17_第3张图片

通过子查询结果创建表:通过其他表的结构创建表;例:create table t_tmp as select * from;

只创建表的结构;例:create table t_tmp as select * from emp where 1=2;

1.6表的修改:

【1】添加:alter table 表名 add grade number(2);

【2】删除:alter table 表名 drop column grade;

【3】修改字段:alter table 表名 modify (address varchar2(150));

【4】重命名:rename 表名 to 新表名;

insert/update/delete

insert

insert into 表(表中的列名) values(按照顺序写出数值);

或者 insert into 表 values (按表的默认顺序写出数值)

update

update 表名 set  列名 =‘新数值’ where 指定数值;

delete

delete from 列  where  指定数值;

truncate table 表;删除整个表;

1.7序列:

是Oracle 专有对象,用于产生一个自动递增的数列;

创建序列:create sequence squ_empno start with 1  increment by 1

序列的使用:序列中的下一个值,从定义 start with 的值开始;select  squ_empno.nextval from dual;

获取序列的当前值:select squ_empno。currval from dual; 序列的应用: insert into 表名 values(squ_empno .nextval ......)在数据库开发设计表时,如果需要一个字段的值是自增的花,优先考虑序列

1.8事物

事物的概念:

你可能感兴趣的:(2019-05-17)