1.数据库表空间建立以及用泵导入dmp文件
---创建表空间-----
create tablespace factory
datafile 'D:\app\oradata\orcl\factory.dbf' size 500M
autoextend on next 100M maxsize unlimited logging
extent management local autoallocate
segment space management auto;
----创建用户-----
CREATE USER factory IDENTIFIED BY factory DEFAULT TABLESPACE factory TEMPORARY TABLESPACE TEMP;
-----给用户权限--------
grant connect,resource,dba to factory
-- 1、创建泵目录
create directory TECH as 'E:\DATADMP'; --必须存在 DATADMP目录文件夹
-- 2、授权泵目录给用户
Grant read,write on directory TECH to hb_test;
-- CMD运行:impdp factory/factory@orcl directory=TECH dumpfile=20170616.DMP schemas=factory --文件放在上面的DATADMP文件夹中
或
-- imp factory/factory@orcl file=E:\DATADMP\20170616.DMP full=y
2.为空间坐标字段添加索引
先插入元数据
INSERT INTO USER_SDO_GEOM_METADATA (TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
VALUES ('tablename', 'ZB', MDSYS.SDO_DIM_ARRAY (
MDSYS.SDO_DIM_ELEMENT('X', -180, 180, 0.0001),
MDSYS.SDO_DIM_ELEMENT('Y', -90, 90, 0.0001)), null);
然后建立索引
create index indexname on tablename(ZB) indextype is mdsys.spatial_index
查看元数据语句
select * from USER_SDO_GEOM_METADATA;
删除原数据语句
delete from USER_SDO_GEOM_METADATA where table_name='tablename'
查看索引语句
select * from USER_SDO_INDEX_METADATA;
删除索引语句
DROP INDEX indexname
3.数据误删闪回
–查询某个时间点表里的数据
select * from tablename as of timestamp to_timestamp('2018-09-29 11:00:00','yyyy-mm-dd hh24:mi:ss');
–开启闪回
alter table tablename enable row movement;
–闪回到某一时间点
flashback table tablename to timestamp to_timestamp('2018-09-29 11:00:00','yyyy-mm-dd hh24:mi:ss');
4.查询表面以及字段及注释
查询所有表
select * from user_all_tables
查询表中字段及其注释
select * from user_col_comments where table_name=' ';
在pl/sql中善用 “||” (或符号)进行查询结果的字符串拼接也许会对我们程序中对数据库操作代码有所帮助,pl/sql中拼接查询出我们想要的带表字段活注释的语句,复制粘贴即可,就可以省下人物拼接的时间