一、视图(重点)

什么是视图?

·视图由一个或多个表(或视图)中提取数据而成

·视图是一种虚拟表

·视图一经创建,可以当作表来使用。

使用视图的好处?

· 简化复杂数据查询

· 提高运行效率

· 屏蔽数据库表结构,实现数据逻辑独立性

· 限制数据库访问

· 在相同数据上提供不同的视图,便于数据共享

命名规范:

·以V开头,后加视图名 :VEMP10

·以系统名v_+模块名作为前缀 ,例:V_SECTION

·VIEW_VDU_ADMINISTRATORS

·视图名_VU: user view

创建视图:

创建视图的语法:

CREATE VIEW 视图名称 AS 子查询 ;

创建视图的步骤:

1:先把查询语句写正确

2:  然后在添加视图语句

注意:在写子查询时不能使用  SELECT *

程序员手则:严禁使用 SELECT * FROM 表名

删除视图

替换视图:

CREATE OR REPLACE 视图名称 AS 子查询 ;

创建不可更新视图:

· WITH CHECK OPTION:不能更新视图的创建条件

例:在视图创建中使用此参数

1 CREATE OR REPLACE VIEW empv202 AS3       SELECT * FROM emp WHERE deptno=204 WITH CHECK OPTION ;

UPDATE empv20 SET deptno=30 WHERE empno=7369 ;

更新语句不起作用

创建视图:

· WITH READ ONLY:创建的视图只读

例:创建只读视图

1 CREATE OR REPLACE VIEW empv202 AS3 SELECT * FROM emp WHERE deptno=204 WITH  READ  ONLY ;

二、存储进程Procedure

三、段user_segments和区user_extents

空间以段(segment)为单位分配给对象(如表、群集和索引),它们在物理上对应于在数据库中创建的逻辑对象

Oracle中的段(segment)是占用磁盘空间的一个对象,

常见段的类型有:

聚簇cluster

表table

表分区tablepartition

索引index

索引分区

Lob分区、Lob子分区、Lob索引、Lob段

嵌套表nestedtable

回滚段rollback。

select * from user_segments;

在11gR2中,一张表只有插入数据后才会分配段空间

一个段中可能有多种不同的表,段包含区,区包含块。同时表也包含区和块。

段由称为区(extent)的连续区域组成

四、SQLLoader

五、字符集

博客:http://blog.itpub.net/118838/viewspace-730214/

查看数据库字符集

数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集。

客户端字符集环境select * from nls_instance_parameters,其来源于v$parameter,

客户端的字符集要求与服务器一致,才能正确显示数据库的非Ascii字符。

修改数据库UTF-8编码

例如把字符集GB2312修改为UTF-8步骤:

 1.在SQL*PLUS 中,以DBA登录conn 用户名 as sysdba
2.执行转换语句:
SHUTDOWN IMMEDIATE;
STARTUP MOUNT EXCLUSIVE;
ALTER SYSTEM ENABLE RESTRICTED SESSION;
ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
ALTER SYSTEM SET AQ_TM_PROCESSES=0;
ALTER DATABASE OPEN;
ALTER DATABASE NATIONAL CHARACTER SET UTF8;
SHUTDOWN immediate;
startup;

可能报错:‘ORA-12717: Cannot ALTER DATABASE NATIONAL CHARACTER SET whenNCLOB data exists’

解决方法:

一、使用INTERNAL_USE 关键字修改区域设置

 SHUTDOWN IMMEDIATE;
STARTUP MOUNT EXCLUSIVE;
ALTER SYSTEM ENABLE RESTRICTED SESSION;
ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
ALTER SYSTEM SET AQ_TM_PROCESSES=0;
ALTER DATABASE OPEN;
ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE UTF8;
SHUTDOWN immediate;
startup;

行式数据库

列式数据库

Oracle数据库常用技术的更多相关文章

  1. oracle数据库常用查询一

    oracle数据库常用查询一 sqlplus / as sysdba; 或sqlplus sys/密码 as sysdba;两者都是以sys登录.conn scott/tiger@orcl; conn ...

  2. ORACLE数据库常用查询二

    ORACLE数据库常用查询 1.查看表空间对应数据文件情况: SQL MB,AUTOEXTENSIBLE FROM DBA_DATA_FILES; TABLESPACE_NAME FILE_NAME ...

  3. .Net 中读写Oracle数据库常用两种方式

    .net中连接Oracle 的两种方式:OracleClient,OleDb转载 2015年04月24日 00:00:24 10820.Net 中读写Oracle数据库常用两种方式:OracleCli ...

  4. Oracle数据库常用的Sql语句整理

    Oracle数据库常用的Sql语句整理 查看当前用户的缺省表空间 : select username,default_tablespace from user_users; 2.查看用户下所有的表 : ...

  5. oracle数据库常用plsql语句

    (一)oracle中常用的数据类型 (二)PL-sql基本语法 1.创建数据库表.删除数据库表 create table table1--创建表 ( field1 number(8), field2 ...

  6. oracle数据库常用SQL语句(11.29更新)

    笔者日常工作中常用到的sql语句,现总结如下,留作日后查看. 1.按照两列中的最大值取 ,只取两列其中的一列 SELECT * FROM t_doc T ORDER BY GREATEST(T.Loa ...

  7. Oracle数据库常用Sql语句大全

    一,数据控制语句 (DML) 部分 1.INSERT  (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……); INSE ...

  8. ORACLE数据库 常用命令和Sql常用语句

    ORACLE 账号相关 如何获取表及权限 1.COPY表空间backup scottexp登录管理员账号system2.创建用户 create user han identified(认证) by m ...

  9. Oracle数据库常用命令(持续更新)

    1. 查询当前用户所有的表 select * from user_tables; 2. 查询当前用户能访问的表 select * from all_tables; 3. 获取表字段 select * ...

随机推荐

  1. hdu_5738_Eureka(脑洞)

    题目链接:hdu_5738_Eureka 题意: 这题感觉说不清楚,坑点有点坑,一不小心就会推出错误的公式,然后最重要的是你还不知道你推错了 题解: 这里贴一个官方的题解 Eureka xjb推导一下 ...

  2. cookies和session的优缺点

    具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案. Cookie的优缺点: 优点:极高的扩展性和可用性通过良好的编程,控制保存在cookie ...

  3. Android NDK 下的宽字符编码转换及icu库的使用(转)

    原贴http://topic.csdn.net/u/20101022/16/1b2e0cec-b9d2-42ea-8d9c-4f1bb8320a54.html?r=70149216 ,看过并动手实现, ...

  4. 同花顺核新下单程序的"界面不操作超时时间"的设定

    "界面不操作超时时间"的设定 同花顺核新下单程序的'界面不操作超时时间'的设定 系统> 系统设置> 界面设置> 界面不操作超时时间(分): 在这个输入框里填上个3 ...

  5. SpringMVC强大的数据绑定

    6.6.2.@RequestParam绑定单个请求参数值 @RequestParam用于将请求参数区数据映射到功能处理方法的参数上. public String requestparam1(@Requ ...

  6. WebDriver(Selenium2) 判断页面是否刷新的方法

    http://uniquepig.iteye.com/blog/1568208 public static boolean waitPageRefresh(WebElement trigger) { ...

  7. STM32开发指南-按键输入实验

    I/O口做为输入的例子.通过配置寄存器设置为输入口,检测对应寄存器的值,判读输入状态,按键是否被按下.

  8. swift 自学小计

    返回多个value func Myfunc()->(double,double,double) { return (3.14,2.33,9.88) } 动态参数 func Myfunc(numb ...

  9. tempnam问题

    tempnam()函数创建一个具有唯一文件名的临时文件 若成功,则返回新的临时文件名,若失败,则返回false 失败原因 c:\windows\temp文件夹不具备读写权限(即 不是超级管理员)

  10. webservice中采用协议Http,它是指什么意思

    webservice 协议 Web Service使用的是 SOAP (Simple Object Access Protocol)协议soap协议只是用来封装消息用的.封装后的消息你可以通过各种已有 ...