oracle之回顾二】的更多相关文章

TCL 1.  事务(Transaction) 事务(Transaction)是一个操作序列.这些操作要么都做, 要么都不做, 是一个不可分割的工作单元, 是数据库环境中的最小工作单元. 1.1 事务的特性(ACID) 1.1.1 Atomicity(原子性) 原子性是指事务包含的所有操作要么全部成功, 要么全部失败回滚, 因此事务的操作如果成功就必须要完全应用到数据库, 如果操作失败则不能对数据库有任何影响. 1.1.2 Consistency(一致性) 一致性是指事务必须使数据库从一个一致性…
SQL优化原则 二.SQL语句编写注意问题 www.2cto.com 下面就某些SQL语句的where子句编写中需要注意的问题作详细介绍.在这些where子句中,即使某些列存在索引,但是由于编写了劣质的SQL,系统在运行该SQL语句时也不能使用该索引,而同样使用全表扫描,这就造成了响应速度的极大降低. 1. IS NULL 与 IS NOT NULL 不能用null作索引,任何包含null值的列都将不会被包含在索引中.即使索引有多列这样的情况下,只要这些列中有一列含有null,该列就会从索引中排…
1.Oracle表的管理 表名和列名的命名规则: 必须以字母开头: 长度不能超过30个字符: 不能使用oracle的保留字: 只能使用如下字符:A-Z, a-z, 0-9, $, # 等. Oracle支持的数据类型: 字符型 char 定长 最大2000个字符 char(10)----'小韩' 前四个字符放'小韩',后添加6个空格补全.(查询效率高) varchar2(20) 变长 最大4000个字符 vachar2(10)----'小韩' oracle分配四个字符,这样可以节省空间. clo…
Configuration oracle database Password file(非必要)        cd $ORACLE_HOME/dbs/ ls 查看是否有init.ora 创建密码文件: orapwd file=orapwSID password=value 例如: orapwd file=orapwupcrm password=upcrm 这样创建后的密码文件是一个二进制文件 ls 查看是否创建成功 Parameter file        从oracle9i开始,oracl…
一.索引 表的数据是无序的,所以叫堆表(heap table),意思为随机存储数据.因为数据是随机存储的,所以在查询的时候需要全表扫描.索引就是将无序的数据有序化,这样就可以在查询数据的时候 减少数据块的读取,实现快速定位数据.对大表的排序是非常消耗资源的,索引是事先排好序,这样就可以在需要排序的时候使用索引就可以避免排序.索引对数据库的影响是巨大的,但索引不是万能的,数据库对索引的使用是有选择的,我们可以强制使用索引,也可以强制不使用索引.一般的情况下数据库会自动的判断是否使用索引,除非你明确…
一.Oracle数据库几种启动方式 1.startup nomount 非安装启动,这种方式下启动可执行:重建控制文件.重建数据库,读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件. 2.startup mount (dbname) 安装启动,这种方式启动下可执行:数据库日志归档.数据库介质恢复.使数据文件联机或脱机.重新定位数据文件.重做日志文件. 执行“nomount”,然后打开控制文件,确认数据文件和联机日志文件的位置,但此时不对数…
一.使用profile管理用户口令概述:profile是口令限制,资源限制的命令集合,当建立数据库时,oracle会自动建立名称为default的profile.当建立用户没有指定profile选项时,那么oracle就会将default分配给用户 1.账户锁定概述:指定该账户(用户)登陆时最多可以输入密码的次数,也可以指定用户锁定的时间(天)一般用dba的身份去执行该命令.例子:指定scott这个用户最多只能尝试3次登陆,锁定时间为2天,让我们看看怎么实现.创建profile文件SQL> cr…
一.使用profile管理用户口令概述:profile是口令限制,资源限制的命令集合,当建立数据库时,oracle会自动建立名称为default的profile.当建立用户没有指定profile选项时,那么oracle就会将default分配给用户.1.账户锁定概述:指定该账户(用户)登陆时最多可以输入密码的次数,也可以指定用户锁定的时间(天)一般用dba的身份去执行该命令.例子:指定scott这个用户最多只能尝试3次登陆,锁定时间为2天,让我们看看怎么实现.创建profile文件SQL> cr…
一.资源限制与口令管理概述 1.概要文件介绍: 在Oracle数据库中,用户对数据库和系统资源使用的限制以及对用户口令的管理的是建立概要文件实现的.它是Oracle数据库安全策略的重要组成不封.每个数据库用户都具有一个概要文件. 通常DBA将用户分类,为每种不同的用户创建一个概要文件.这样就不必为每个系统用户单独创建一个概要文件. 概要文件不是一个物理文件而是存储在SYS模式下的几个表中的信息的集合. 在Oracle数据库创建的同时,系统创建一个名为DEFAULT的默认概要文件.如果没有为用户指…
指令来练习 1.password,修改密码输入旧命令,在输入新的命令 2.查询当前用户 show user: 2.查询用户下的所有对象,使用tab表,tab是每一个用户都有的 select *from tab: 3.设置先是的列宽 字符类型 column 字段名 format a宽度:整型column 字段名format 99999{9的个数,表示有多宽}: 4,设置一页显示的数据个数 set pagesize num: 5,清屏 host cls 6.查询表结构 desc 表名: 7.查询方式…
一.oracle通用函数vnl(a,b) 用于任何类型,如果a的值不为null返回a的值否则返回b的值 条件判断oracle中可以使用 case 字段 when 条件1 then 表达式1 when 条件2 then 表达式2 else 表达式n end 另一种,decode() 函数,可以算case when的增强(字段,条件1,表达式1,条件2,表达式2,..表达式n) 二.数据库中的引号 单引号出现的地方:1字符串,日期 .双引号出现的地方:列的别名 select ename "姓 名&q…
一.DBWR进程介绍 DBWR进程执行将数据块缓冲区写入数据文件的工作,是负责缓冲存储管理的一个Oracle后台进程.在修改DB Cache中的某个缓冲区时,会将它标志为“DIRTY”,DBWR的主要任务将这些标为“DIRTY”的缓冲区写入磁盘,使缓冲区保持“CLEAN”. 由于缓冲区填入数据库或被用户进程弄脏,未用的缓冲区数目会减少,最终可能导致用户进程从磁盘读入块到内存存储区时无法找到未用的缓冲区.DBWR将管理缓冲存储区,使用户进程总能得到未使用的缓冲区. 二.缓冲物刷盘算发 Oracle…
一.口令文件作用 1.口令文件基本介绍 Oracle数据库口令文件存放有超级用户的口令及其他特殊用户的用户名/口令. 口令文件在数据库创建时,自动创建,存放在$ORACLE_HOME/dbs. 此文件是初始化数据库管理工作的基础.在此后,可用orapwd手动创建. 2.口令文件作用 拥有SYSDBA和SYSOPER权限的用户,可以执行类似CREATE DATABASE.DROP DATABASE.RECOVER.STARTUP.SHUTDOWN之类的操作.这两个权限不但很高,而且很特殊.因为这些…
Oracle的sql语言: Sql全称:struct query language 结构化查询语言 五大类: DDL:数据定义语言  create  alter  drop DQL:数据查询语言select        DML:数据操作语言  insert   update  delete DCL:数据控制语言 grant   revoke TCL(TPL):事务控制语言(DML可以操作)  savepoint  commit  rollback to 事务保存点:savepoint 保存点的…
Windows 中的 Oracle 服务 Oracle 9i的每个实例在Windows中都作为一项服务启动 服务是在 Windows 注册表中注册的可执行进程,由 Windows 操作系统管理 “服务”对话框中的各项 Oracle 服务如图所示:…
1. Oracle字符串操作 1.1. 字符串类型 1.1.1. CHAR和VARCHAR2类型 CHAR和VARCHAR2类型都是用来表示字符串数据类型,用来在表中存放字符串信息, 比如姓名.职业.地址等. CHAR存放定长字符,如果数据存不满定长长度,则补齐空格: VARCHAR2存放变长字符,实际数据有多少长度则占用多少. 如保存字符串'HELLOWORLD',共10个英文字母: CHAR(100): 10个字母,补齐90个空格,实际占用100个字节. VARCHAR2(100) :10个…
需要安装的东西都准备好了,继续生成后台表.过程.函数.触发器等.ps/sql中 @@E:\oracle\product\11.2.0\client_1\ASP.NET\SQL\InstallAllOracleASPNETProviders.sql…
1.二维数组:是一个特殊的一维数组 完全初始化: 1)int a[2][3]={{1,2,3},{2,3,4}}; 2)连续赋值int a[2][3]={1,2,3,2,3,4}; 3)可以省略第一维的长度,第二维不能省 int a[][3]={1,2,3,2,3,4}; 部分初始化 int a[2][3]={1,2,3}; 先定义后初始化 2.二维数组的遍历 两重循环 3.二维数组的存储,先行后列,连续存储 二维数组的首地址=数组名=&a[0]=&a[0][0] 通过数组名计算数组占用的…
本文转自:http://www.cnblogs.com/ycdx2001/p/3502495.html with temp as( select 'China' nation ,'Guangzhou' city from dual union all select 'China' nation ,'Shanghai' city from dual union all select 'China' nation ,'Beijing' city from dual union all select…
本文转自:http://www.cnblogs.com/scy251147/archive/2011/04/16/2018326.html 上节中,讲述的就是Oracle存储过程分页的使用方式,但是如果大量的页面要使用这个分页存储过程,如果利用上节的方式,势必要书写大量的代码.如何才能够少些代码书写量呢?当然了,利用自定义web控件进行一下封装,也许是一个好方法,但是如何进行封装呢? 首先,就是在项目中添加一个“Web 用户控件“的页面,我们定义为:MyPagination.ascx 然后,就是…
1.使用逻辑操作符号问题:查询工资高于500或者是岗位为manager的雇员,同时还要满足他们的姓名首字母为大写的J?select * from emp where (sal > 500 or job = 'MANAGER') and ename like 'J%'; 2.使用order by字句 默认asc问题:如何按照工资从低到高的顺序显示雇员的信息?select * from emp order by sal;问题:按照部门号升序而雇员的工资降序排列select * from emp or…
一.常规内部类 public class Outer { int count; void say(){ count++; System.out.println("我是外部类"); } void walk(){ count++; System.out.println("I am walking....."); } class Inner{ int inner_count; //外部类无法访问到内部类的局部变量 void say(){ walk();//内部类可以直接调…
SELECT查询 函数分为: 单行函数 -- 一条记录进入,一条记录输出 多行函数(分组函数)-- 多条记录进入,按组输出 单行函数: select id,first_name,nvl(commission,0) from s_emp; 多行函数: select count(*) from s_emp; 单行函数分为: 字符函数.数字函数.日期函数.转换函数和其他函数 字符函数: lower--转换成小写字符 upper--转换成大写字符 initcap--首字母大写,其他小写(较少用) sub…
数据库返回的是结果集,存储过程返回的是一个或者多个值,所以不要使用while循环去读取,也不要使用datareader函数去调用.v_class_name是返回函数 使用.net调用oracle数据库的时候模糊查询使用以下语法: WHERE NAME like '%'||:v_name||'%' 切记:它的参数和mssql最大的不同是,不能使用@符号,只能使用冒号:在给参数赋值的时候不可加:冒号…
<ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入Disk1.然后执行安装: $ ./runInstaller 执行脚本 # /u01/app/oracle//db_1/root.sh Running Oracle 10g root.sh script... The following environment variables are set as: ORA…
接上篇博客介绍Oracle基本概要.以下将介绍数据库的操作指令. Sql*plus经常使用命令 连接命令 1. conn[ect] 使用方法 connusername/password@网路服务名[as sysdba/sysoper] 当用特权用户身份连接时,必须带上as sysdba或者是as sysoper 文件操作命令 1.start 和@ 执行sql脚本      案例sql >@ d:\a.sql或者sql>start d:\a.sql 2. edit 该命令能够编辑制定的sql脚本…
1.使用逻辑操作符号问题:查询工资高于500或者是岗位为manager的雇员,同时还要满足他们的姓名首字母为大写的J?select * from emp where (sal > 500 or job = 'MANAGER') and ename like 'J%'; 2.使用order by字句 默认asc问题:如何按照工资从低到高的顺序显示雇员的信息?select * from emp order by sal;问题:按照部门号升序而雇员的工资降序排列select * from emp or…
在上一篇,初步了解了Audit的作用以及如何使用Audit,本篇记录如何手动清理Audit数据. (一) 概述 Audit的数据主要存储在sys.aud$表中,该表默认位于system表空间中,我们根据需求,将该表移到了sysaux表空间中.由于审计数据量较大,需要经常关注sysaux表空间的使用情况,同时根据实际情况对sys.aud$表进行数据清理. (二) 清理步骤 (1)使用sys账号登陆数据库,打开计时功能,方便查看每一个命令的执行时间 SQL> set timing on (2)在清理…
1.使用逻辑操作符号问题:查询工资高于500或者是岗位为manager的雇员,同时还要满足他们的姓名首字母为大写的J?select * from emp where (sal > 500 or job = 'MANAGER') and ename like 'J%'; 2.使用order by字句 默认asc问题:如何按照工资从低到高的顺序显示雇员的信息?select * from emp order by sal;问题:按照部门号升序而雇员的工资降序排列select * from emp or…
多表查询: 笛卡尔积: 实际上是两张表的乘积,但是在实际开发中没有太大意义 格式: select * from 表1,表2 select * from emp; select * from dept; select * from emp, dept; select * from emp e1, dept d1 where e1.deptno = d1.deptno; 连接类型分类 内联接 隐式内联接 等值内联接: where e1.deptno = d1.deptno; 不等值内联接: wher…