数据库对象
1.视图(view):
称为虚表,在数据库中不存在实体。视图本质上是对物理表(基表)的一种数据保护。不让无关人员看到一些保密性质的内容。
1.1创建视图:
语法:create or replace view 视图名 as query;
1.2使用视图:
可以像使用表一样使用视图,修改添加数据,通过虚表添加的数据最终存储进基表内,虚表一般只是基表的部分数据。如果基表对未提供字段置null,如基表此字段不能为null,会显示添加失败
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表
其他类型:CLOB:最大长度4g;大对象,少使用,一般存在大对象一般的解决方法存入文件地址。blob:存储二进制文件。
再数据库设计时,如要存储大文件 ,一定不要使用CLOB/blob,通用的解决方案都是文件的地址。
1.5表的创建“”:
语法:create table 表名(列属性),还可以使用开发工具生成:
通过子查询结果创建表:通过其他表的结构创建表;例: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事物
事物的概念: