Oracle数据库常用技术
一、视图(重点)
什么是视图?
·视图由一个或多个表(或视图)中提取数据而成
·视图是一种虚拟表
·视图一经创建,可以当作表来使用。
使用视图的好处?
· 简化复杂数据查询
· 提高运行效率
· 屏蔽数据库表结构,实现数据逻辑独立性
· 限制数据库访问
· 在相同数据上提供不同的视图,便于数据共享
命名规范:
·以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数据库常用技术的更多相关文章
- oracle数据库常用查询一
oracle数据库常用查询一 sqlplus / as sysdba; 或sqlplus sys/密码 as sysdba;两者都是以sys登录.conn scott/tiger@orcl; conn ...
- ORACLE数据库常用查询二
ORACLE数据库常用查询 1.查看表空间对应数据文件情况: SQL MB,AUTOEXTENSIBLE FROM DBA_DATA_FILES; TABLESPACE_NAME FILE_NAME ...
- .Net 中读写Oracle数据库常用两种方式
.net中连接Oracle 的两种方式:OracleClient,OleDb转载 2015年04月24日 00:00:24 10820.Net 中读写Oracle数据库常用两种方式:OracleCli ...
- Oracle数据库常用的Sql语句整理
Oracle数据库常用的Sql语句整理 查看当前用户的缺省表空间 : select username,default_tablespace from user_users; 2.查看用户下所有的表 : ...
- oracle数据库常用plsql语句
(一)oracle中常用的数据类型 (二)PL-sql基本语法 1.创建数据库表.删除数据库表 create table table1--创建表 ( field1 number(8), field2 ...
- oracle数据库常用SQL语句(11.29更新)
笔者日常工作中常用到的sql语句,现总结如下,留作日后查看. 1.按照两列中的最大值取 ,只取两列其中的一列 SELECT * FROM t_doc T ORDER BY GREATEST(T.Loa ...
- Oracle数据库常用Sql语句大全
一,数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……); INSE ...
- ORACLE数据库 常用命令和Sql常用语句
ORACLE 账号相关 如何获取表及权限 1.COPY表空间backup scottexp登录管理员账号system2.创建用户 create user han identified(认证) by m ...
- Oracle数据库常用命令(持续更新)
1. 查询当前用户所有的表 select * from user_tables; 2. 查询当前用户能访问的表 select * from all_tables; 3. 获取表字段 select * ...
随机推荐
- C# 经典入门15章-TextBoxControl
第一步:设计界面如下:
- Html 中表单提交的一些知识总结——防止表单自动提交,以及submit和button提交表单的区别
转自:http://jackaudrey.blog.163.com/blog/static/1314217882010590041833/ 在页面中有多个input type="text&q ...
- Blocks(闭包)
转自:http://my.oschina.net/joanfen/blog/317644?fromerr=ATWzC3Y2 Block 与传统代码相比较更加轻量,调用简洁方便,而且可以返回多个参数,使 ...
- Winform带dataGridview的Combox控件
调用控件: public partial class Form1 : Form { public Form1() { InitializeComponent(); //---------------- ...
- Myeclipse添加struts2支持后取消操作
Myeclipse添加struts包后, 想重新加载的方法: 1. myelicpse,右键项目,选close project 2. 找到项目所在目录, 打开.classpath删除带有struts2 ...
- git 以及 github 使用系列
本人打算开始写一个有关git 使用,以及github 使用的系列文章了,一来可以自己总结,二来github用好了,可以存放自己的一些知识框架吧. 1.准备 : 有一个 github上的账号, wind ...
- .net remoting 实现通用消息处理窗口
.net remoting 实现通用消息处理窗口 实现机制是制作一个cmd窗口作为信息展示窗口,主程序将需要展示的信息抛出到cmd窗口显示,以此方式做到消息的展示. 以下是cmd窗口的代码,cmd窗体 ...
- [数据结构]Treap简介
[写在前面的话] 如果想学Treap,请先了解BST和BST的旋转 二叉搜索树(BST)(百度百科):[here] 英文好的读者可以戳这里(维基百科) 自己的博客:关于旋转(很水,顶多就算是了解怎么旋 ...
- javascript 函数的基础知识
1. Why JavaScript functions always return a value? I'm taking a course in JavaScript programming, an ...
- WIN32动态链接库设计与使用
WINDOWS动态链接库技术能很好地实现代码的分模块,综合来说,windows动态链接库分为三种WIN32动态链接库,使用WINDOWS api函数调用设计,贴近底层,体积小,是最初Windows程序 ...