--以本机示例:
--全局数据库名: muna --SID: haha--用户: znn(权限 connect ,resource,dba)--表空间:haha_data 及临时表空间 haha_temp--oracle内部有两个建好的用户:system和sys
--查询数据库中的所有用户select * from dba_users;
--查询所有的表空间select tablespace_name, sum(bytes) / 1024 / 1024from dba_data_filesgroup by tablespace_name;--或select * from dba_tablespaces;
--查询当前用户所属的表空间select username,default_tablespace from user_users;
--删除一个表中的全部数据,使用drop table,delete * from 表名时,tablespace表空间该表的战胜空间并未释放,
--反复几次drop,delete操作后,该tablespace上百兆的空间就被耗光了。truncate table table_name;--创建临时表空间create temporary tablespace haha_temptempfile 'D:\app\xxx\oradata\test\haha_temp01.dbf'size 50m autoextend on next 50m maxsize 20480mextent management local;
--创建表空间create tablespace haha_data logging datafile 'D:\app\xxx\oradata\test\haha_data01.dbf'size 32m autoextend on next 32m maxsize 2048mextent management local;
--创建用户并指定表空间create user znn identified by 123default tablespace haha_datatemporary tablespace haha_temp;
--给用户授予权限grant connect ,resource,dba to znn;
-- 创建序列 Create sequence create sequence SEQ_TESTminvalue 1000000000maxvalue 9999999999start with 1000000001increment by 1cache 20nocycle;
--创建触发器create or replace trigger trg_test before insert on znn_test01for each row begin if(:new.cert_type='01') then :new.cert_type := '0'; elsif(:new.cert_type='02') then :new.cert_type := '1'; end if;end; --行触发器与语句触发器区别: --1、行触发器有for each row子句,语句触发器没有 --2、行解决器可以有when作为触发限制,可以使用new/old。语句触发器不能有when作为触发限制 --3、行触发器对应DML语句所影响到的表中的每一行,触发器都要执行一遍。 -- 而语句触发器,对应DML语句所影响到的表中的所有行,触发器只执行一遍。