随笔分类 -  Oracle

摘要:应用存储过程的优点:1.具有更好的性能存储过程是预编译的,只在创建时进行编译,以后每次执行存储过程都不需再重新编译,而一般 SQL 语句每执行一次就编译一次,因此使用存储过程可以提高数据库执行速度。2.功能实现更加灵活存储过程中可以应用条件判断和游标等语句,有很强的灵活性,可以直接调用数据库的一些内 阅读全文
posted @ 2017-05-08 08:50 ATJAVA 阅读(894) 评论(0) 推荐(0) 编辑
摘要:SQL:结构化查询语言(Structured Query Language) PL/SQL:过程化SQL语言(Procedural Language/SQL) DDL(Data Definition Language 数据定义语言) DML(Data Manipulation Language 数据操控语言) Tcl (最早称为"工具命令语言""Tool Command Langua... 阅读全文
posted @ 2017-05-06 10:25 ATJAVA 阅读(300) 评论(0) 推荐(0) 编辑
摘要:由于SQL优化起来比较复杂,并且还会受环境限制,在开发过程中,写SQL必须必须要遵循以下几点的原则: 阅读全文
posted @ 2017-05-03 18:30 ATJAVA 阅读(9359) 评论(0) 推荐(1) 编辑
摘要:1、原因分析 通过对用户反映情况的分析,发现字符集的设置不当是影响ORACLE数据库汉字显示的关键问题。那么字符集是怎么一会事呢?字符集是ORACLE 为适应不同语言文字显示而设定的。用于汉字显示的字符集主要有ZHS16CGB231280,US7ASCII,WE8ISO8859P1等。字符集不仅 需 阅读全文
posted @ 2017-04-20 18:43 ATJAVA 阅读(2143) 评论(0) 推荐(0) 编辑
摘要:一、复杂查询 1、 列出至少有一个员工的所有部门编号、名称,并统计出这些部门的平均工资、最低工资、最高工资。 1、确定所需要的数据表: emp表:可以查询出员工的数量; dept表:部门名称; emp表:统计信息; 2、确定已知的关联字段: emp.deptno=dept.deptno; 第一步:找出至少有一个员工的部门编号 SELECT deptno,COUNT(empno)FROM em... 阅读全文
posted @ 2017-04-20 12:20 ATJAVA 阅读(269) 评论(0) 推荐(0) 编辑
摘要:四、统计函数及分组查询 1、统计函数 在之前学习过一个COUNT()函数,此函数的功能可以统计出表中的数据量,实际上这个就是一个统计函数,而常用的统计函数有如下几个: COUNT():查询表中的数据记录; AVG():求出平均值; SUM():求和; MAX():求出最大值; MIN():求出最小值 阅读全文
posted @ 2017-04-15 09:56 ATJAVA 阅读(321) 评论(0) 推荐(0) 编辑
摘要:一、基本概念 多表查询的语法如下: 但是如果要进行多表查询之前,首先必须先查询出几个数据 —— 雇员表和部门表中的数据量,这个操作可以通过COUNT()函数完成。 范例:查询emp表中的数据量 ——返回了14条记录 范例:查询dept表中的数据量 ——4条记录 额外补充一点:何为经验? 在日后的开发 阅读全文
posted @ 2017-04-14 12:28 ATJAVA 阅读(231) 评论(0) 推荐(0) 编辑
摘要:一、什么是安全的系统 安全性建设是一个长期并且卓绝的工作。作为一个符合标准的企业级系统,我们认为税务系统应该具备以下的安全性特点: ◆高可用性 ◆对敏感数据的访问控制能力。 ◆监测用户行为的审计能力。 ◆用户帐号管理的有效性和扩充性 二、从哪些方面作安全性检查 一个企业级系统的安全性建设并不仅仅局限 阅读全文
posted @ 2017-03-24 19:18 ATJAVA 阅读(1534) 评论(0) 推荐(0) 编辑
摘要:一、什么是数据库连接池? 官方:数据库连接池(Connection pooling)是程序启动时建立足够的数据库连接,并将这些连接组成一个连接池,由程序动态地对池中的连接进行申请,使用,释放。个人理解:创建数据库连接是一个很耗时的操作,也容易对数据库造成安全隐患。所以,在程序初始化的时候,集中创建多 阅读全文
posted @ 2017-03-24 19:11 ATJAVA 阅读(487) 评论(0) 推荐(0) 编辑
摘要:数据库的三范式: ①字段不可分。 ②有主键,非主键字段依赖主键。 ③非主键字段不能互相依赖。 T-SQL: 在整个数据库中,查询操作占据增删改查的80%,而说到查询,T-SQL语句自然不能少。如图上示。 增: ①插入单行 insert into (列名) values (列值) ②将现有的表数据添加到一个已有表 insert into (列名) select from ... 阅读全文
posted @ 2017-02-26 11:11 ATJAVA 阅读(354) 评论(0) 推荐(0) 编辑
摘要:Oracle 表之间的连接分为三种: 1. 内连接(自然连接) 2. 外连接 (1)左外连接 (左边的表不加限制) (2)右外连接(右边的表不加限制) (3)全外连接(左右两表都不加限制) 3. 自连接(同一张表内的连接) SQL的标准语法: select table1.column,table2.column from table1 [inner | left |... 阅读全文
posted @ 2017-02-25 11:47 ATJAVA 阅读(256) 评论(0) 推荐(0) 编辑
摘要:子查询其实就是指嵌入到其他语句中的select语句,也称其为嵌套查询。 值得注意的在DDL语句中应用子查询的时候子查询可以使用order by 子句。 但是在DML语句中的where子句,set子句中,子查询是不能使用order by子句的。 简单例子:查询工作和SMITH一样的所有员工的信息(不包含SMITH) select ename ,sal from emp e where j... 阅读全文
posted @ 2017-02-08 22:26 ATJAVA 阅读(454) 评论(0) 推荐(0) 编辑
摘要:数据库管理员(Database Administrator,简称DBA)基本知识: 一、数据库基础 1. 数据抽象:物理抽象、概念抽象、视图级抽象,内模式、模式、外模式 2. SQL语言包括数据定义、数据操纵(Data Manipulation),数据控制(Data Control) 数据定义:Create Table,Alter Table,Drop Table, Craete/Drop I... 阅读全文
posted @ 2017-02-07 12:56 ATJAVA 阅读(1288) 评论(0) 推荐(0) 编辑
摘要:Oracle---视图 视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改。视图基于的表称为基表,Oracle的数据库对象分为五种:表,视图,序列,索引和同义词。视图是存储在数据字典里的一条select语句。通过创建视图可以提取数据的逻辑上的集合或组合。 视图是一个逻辑表,是查看表的一种方式。视图是对根据预定义的选择标准、由一个或者多个行的集合建立... 阅读全文
posted @ 2017-01-23 08:45 ATJAVA 阅读(153) 评论(0) 推荐(0) 编辑
摘要:一、什么是事务 事务用于保证数据的一致性,它由一组相关的dml语句组成,该组的dml(数据操作语言,增删改,没有查询)语句要么全部成功,要么全部失败。 如:网上转账就是典型的要用事务来处理,用于保证数据的一致性。 二、事务和锁 当执行事务操作时(dml语句),oracle会在被作用的表上加锁,防止其它用户修改表的结构。 三、提交事务 当用commit语句执行时可以提交事务。当执行了commit语... 阅读全文
posted @ 2017-01-21 16:21 ATJAVA 阅读(228) 评论(0) 推荐(0) 编辑
摘要:一、变量介绍 在编写pl/sql程序时,可以定义变量和常量;在pl/sql程序中包括有: 1)、标量类型(scalar) 2)、复合类型(composite) --用于操作单条记录 3)、参照类型(reference) --用于操作多条记录 4)、lob(large object) 二、标量(scalar)——常用类型 1)、在编写pl/sql块时,如果要使用变量,需在定义部分定义变量。 pl... 阅读全文
posted @ 2017-01-21 12:17 ATJAVA 阅读(1928) 评论(0) 推荐(0) 编辑
摘要:oracle索引: 优点: a 大大提高查询速度。 b 使用唯一索引保证某个字段值的唯一 缺点: a 占用磁盘 b 插入和删除数据时速度变慢。需要重建索引。 创建索引: 1)、单列索引 单列索引是基于单个列所建立的索引 语法:create index 索引名 on 表名(列名); eg、create index nameIndex on custor(name); 2)、复合索引 复... 阅读全文
posted @ 2017-01-21 11:33 ATJAVA 阅读(258) 评论(0) 推荐(0) 编辑
摘要:oracle的分页一共有三种方式 方法一 根据rowid来分 SELECT * FROM EMP WHERE ROWID IN (SELECT RID FROM (SELECT ROWNUM RN, RID FROM (SELECT ROWID RID, EMPNO FROM EMP ORDER BY EMPNO DES... 阅读全文
posted @ 2017-01-21 11:25 ATJAVA 阅读(963) 评论(1) 推荐(0) 编辑
摘要:--简单的条件判断if–then --编写一个过程,可以输入一个雇员名,如果该雇员的工资低于2000,就给该员工工资增加10%。 create or replace procedure sp_pro6 ( spname varchar2 )is --定义 v_sal emp.sal%type; begin --执行 select sal into v_sal from emp where en... 阅读全文
posted @ 2017-01-20 22:26 ATJAVA 阅读(165) 评论(0) 推荐(0) 编辑
摘要:oracle存储过程demo1---无返回值的存储过程: /* 写一个过程,可以向book表添加书 */ create table book( id number(4), book_name varchar2(30), publishing varchar2(30) ) create or replace procedure add_book ( id in number, name in... 阅读全文
posted @ 2017-01-20 18:54 ATJAVA 阅读(151) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示