组函数:对一组数据进行加工,每组数据返回一个值 常用的组函数:count()  avg()  max()   min()  sum()   count()函数  1. count(*) :返回总共的行数,不去除NULL值 2. count(column):返回非NULL行的数量 SQL> select count(*) ,count(sal),count(comm) from emp; COUNT(*) COUNT(SAL) COUNT(COMM) ---------- ---------- -…
一.什么是存储过程和函数 1. 是被命名的pl/sql块 2. 被称之为pl/sql子程序 3. 与匿名块类似,有块结构: 声明部分是可选的(没有declare关键字) 必须有执行部分 可选的异常处理部分 二.匿名块和子程序之间的区别 三.存储过程:语法 CREATE [OR REPLACE] PROCEDURE procedure_name [(argument1 [mode1] datatype1, argument2 [mode2] datatype2, . . .)] IS|AS pro…
事务的概念:事务:一个事务由一组构成一个逻辑操作的DML语句组成 事务有开始有结束,事务以DML语句开始,以Conmmit和Rollback结束.以下情况会使得事务结束: 1. 执行COMMIT 或者 ROLLBACK 语句 2. 执行DDL或者 DCL语句 3. 用户退出 4. 系统崩溃 一个事务可以包含下列语句: 1. 对数据做出一致性修改的DML语句 2. 一个 DDL 语句 3. 一个 DCL语句 DDL与和DCL语句执行的过程: 1. 首先发出COMMIT; 2. 执行对数据字典的DM…
<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软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM <前期准备工作> 安装配置系统环境安装linux ,所有服务都不选择,只是选择安装开发工具,不要安装防火墙(当然也可以在后面关闭) 打开终端,执行如下命令,检查安装包,没有的都要安装 make, glibc, libaio compat-libstdc++, compat-gcc-, compat-gcc--c++, gcc, l…
1.SUBSTR:求父串中的子串 SUBSTR('HelloWorld',1,5) 1:代表子串的起始位置,如果为正,正数,如果为负,倒数 5:代表字串的终止位置,只能向右数,可以省略,如果省略就是数到最后 SUBSTR:求父串中的子串 SUBSTR('HelloWorld',1,5) 1:代表子串的起始位置,如果为正,正数,如果为负,倒数 5:代表字串的终止位置,只能向右数,可以省略,如果省略就是数到最后 2.LENGTH:求字符串的长度 SQL> select LENGTH('HELLOWO…
11.dual:虚表,任何用户都可以使用,表结构如下: SQL> desc dual Name Null? Type ----------------------------------------- -------- ---------------------------- DUMMY VARCHAR2() 12.dual的作用: 1. 查询数据库系统日期 2. 进行四则运算 SQL> select sysdate from dual; ---这里查询数据库系统日期 SYSDATE ----…
数据库软件和数据库都建好了,基本上可以说完成90%的工作,但是美中不足的就是企业管理器还没有安装好,现在我们就开始安装企业管理器吧. 安装之前我们先将补丁给补上.补丁我们也是采用禁默安装.补丁:p8350262_10205_Generic.zip 将补丁上传到目录:$ORACLE_HOME/OPatch/  解压缩: $ unzip p8350262_10205_Generic.zip 得到一个目录为:8350262 打补丁: $ emctl stop dbconsole $ cd $ORACL…
安装配置系统环境安装linux ,所有服务都不选择,只是选择安装开发工具,不要安装防火墙(当然也可以在后面关闭) 打开终端,执行如下命令,检查安装包,没有的都要安装 make, glibc, libaio compat-libstdc++, compat-gcc-, compat-gcc--c++, gcc, libXp openmotif, compat-db 查询glib有没有安装 # rpm -qa | grep glib 如果没有则进行安装,安装需要挂载RHEL5这种光盘 # mount…
关闭数据库 sqlplus / as sysdba shutdown abort 清除oracle软件 su - oracle cd $ORACLE_BASE rm -rf * rm -rf /etc/ora* 删除之前的设置的配置文件的内容 如果之前改过版本,编辑文件 /etc/redhat-release 把Red Hat Enterprise Linux Server release (Tikanga) 改成版本5 vi /etc/pam.d/login 行末删除以下内容 session…
习惯linux中上下键回退历史输入的人们肯定也希望sqlplus中也能实现相同的效果,可是不幸的是,sqlplus中不提供诸多方便的快捷键,这个时候我们就需要另外安装一个插件来实现这个想法. 这个插件叫做: rlwrap 进入rlwrap的官网去下载这个插件:http://utopia.knoware.nl/~hlub/uck/rlwrap/ 下载完后进行解压操作tar -zxf rlwrap-0.41.tar.gz 解压后得到rlwrap这个文件夹,进入其中. 给configure赋权 # c…
视图视图的定义:视图就是一个查询的别名为什么使用视图限制数据的存取 SQL> conn /as sysdba 已连接. SQL> grant create view to scott; 授权成功. SQL> create view v1 as select empno,ename,job,mgr from emp; 视图已创建. SQL> select * from v1; EMPNO ENAME JOB MGR ----- ------ --------- ----- SMITH…
创建表 必须有 : 1. CREATE TABLE 的权限 SQL> conn /as sysdba 已连接. SQL> create user test default tablespace users identified by a; 用户已创建. SQL> conn test/a ERROR: ORA-: user TEST lacks CREATE SESSION privilege; logon denied 警告: 您不再连接到 ORACLE. SQL> conn /a…
DML语句包含以下语法: INSERT:往一个表中增加新行 DELETE:从一个表中删除掉现有的行 UPDATE:更改一个表中现有的行 INSERT语句语法:INSERT INTO TABLE(COLUMN1,COLUMN2,....) VALUES(VAL1,VAL2,...)使用这种方法只能一次插入一行数据 插入包含每一个列值的新行,按缺省顺序列出表中所有的列值. 创建带有结构的空表 SQL> create table t =;---1是不会等于2的,给了这个假条件是使得创建的表只有emp里…
数据字典结构 有两部分组成: 1. 基表:以$结尾的系统表,在创建数据库的时候,oracle自动创建的表 2. 用户可以访问的视图 数据字典的种类 DICTIONARY:简称DICT,所有的数据字典,都可以通过DICT查看 DBA开头的:sys用户所拥有的,普通用户默认不能访问,只有sys授权,才能访问,存储了全部的相关信息查看DBA开头的数据字典: select table_name from dict where table_name like 'DBA%'; TABLE_NAME-----…
一.     本机简介: 本机系统: CentOS-6.4-x86_64 主机名:oracle.ywb IP地址:192.168.146.129 二.     在Linux环境下安装Apache步骤 首先将准备好的文件通过PSCP发送至Linux的/Root/test/soft目录下 在windows下按住Ctrl+R,打开运行,输入CMD进入DOS命令行.在dos命令行中使用pscp –scp  命令将要上传的文件上传至Linux中. 上传成功后.我们总共要安装四个文件.第一个我们首先解压:a…
集合的概念 与数学中的全集.交集.补集的概念是一样的 常用的集合运算符 集合运算符的作用:把两个查询构造为一个联合查询 1. 全集:求连个查询的全集 union all:将两个查询的所有数据全部列出,不进行排序,不去掉重复的部分 SQL> create table t1 ,); Table created. SQL> create table t2 ,); Table created. SQL> select * from t1; EMPNO ENAME JOB MGR HIREDATE…
权限的作用 限制用户对数据的访问 权限的分类 1. 系统权限:能够存取数据库的权限 2. 对象权限:操作数据库对象的内容 系统权限  1.1 如何创建用户: SQL> create user test default tablespace users identified by test; 用户已创建. 1.2 数据库中的系统权限 SQL> desc system_privilege_map; Name Null? Type ----------------------------------…
多列子查询 where条件中出现多列与子查询进行比较 多列子查询分为:成对比较和非成对比较 成对比较: SQL> select ename,sal,job from emp where (deptno,job) in(select deptno,job from emp where ename='SCOTT'); ENAME SAL JOB ------ ----- --------- FORD ANALYST SCOTT ANALYST 非成对比较: select ename,sal,job…
PL/SQL单行函数和组函数详解 函数是一种有零个或多个参数并且有一个返回值的程序.在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类: 单行函数 组函数 本文将讨论如何利用单行函数以及使用规则. SQL中的单行函数 SQL和PL/SQL中自带很多类型的函数,有字符.数字.日期.转换.和混合型等多种函数用于处理单行数据,因此这些都可被统称为单行函数.这些函数均可用于SELECT,WHERE.ORDER BY等子句中,例如下面的例子中就包含了TO…
前言: 想把单行函数进行一个比较全面的总结,并分享给有需要的人,有不明之处还请多多指教. SQL函数:Oracle的内置函数,包括了单行函数和多行函数,本文重点讲解单行函数.单行函数又可以分为许多类,本人将常用的分为5大类: 字符函数(7个),数值函数(7个),日期函数(7个),转换函数(3个),通用函数(9个),下面开始分析. 一.字符函数: 1.concat函数:用来拼接2个字符串,Expression:concat(str1,str2); Example: select concat('m…
 单行函数 ①.字符函数 LOWER(x):将x中的每一个单词都转换成小写 UPPER(x):将x中的每一个单词都转换成大写 INITCAP(x): 将x中的每一个单词的首字母转换成大写 CONCAT(x,y):用于将y加入到x之后,与||功能一样 SUBSTR(x,start[,length]):  用于从x中取得从start位置開始的一个子字符串,    可选參数length:指定子字符串的长度,若未给定,一直取到字符串的最后 LENGTH(x):返回x中字符的个数 INSTR(x,fi…
单行函数和多行函数示意图: 单行函数分为五种类型:字符函数.数值函数.日期函数.转换函数.通用函数 单行函数: --大小写控制函数 select lower('Hello World') 转小写, upper('Hello World') 转大写 from dual; --initcap: 首字母大写 select initcap('hello world') 首字符大写 from dual; --字符控制函数 -- concat: 字符连接函数, 等同于  || select concat('…
    首先我们来看一下ROWNUM: 含义解释: 1.rownum是oracle为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推.这是一个伪列,可以用于限制查询返回的总行数. 2.rownum不能以任何基表的名称作为前缀. 对于ROWNUM来说,通常我们可以使用的比较符是<和<=,不能单独的使用=.>.>=等比较运算符,其实我们可以这样简单的 理解,oracle是找到第一条的记录添加序号1之后,才可以知道谁是第二条记录,然后添加序号2,以此类推.所以对于等于来…
1. 字符函数 --upper(str), lower(str):将str转换成大,小写 select upper('hello') as x1, lower('HELlo') as x2 from dual; --initcap(str):将str中的每个单词的首字母大写,其他字母小写 select initcap('hELlo world!') as x from dual; --concat(str1, str2)或(str1 || str2):将str1和str2两个字符串连接成一个字符…
一.首先控制文件有什么作用呢? 控制文件记录了如下信息:1.数据库的创建时间2.数据文件的位置3.日志文件的位置等作用是指导数据库 找到数据文件,日志文件并将数据库启动到 open 状态. 与其用文字来描述,不如我们来看看control_file里面有些什么好了.然后在一一分析: SQL> show parameter control_file NAME TYPE VALUE ------------------------------------ ----------- -----------…
15/03/21  用函数进行每年,每月,每周,每日的数据汇总 假设一个销售明细表 sale_detail 含有 国家(country),销售时间(sale_time),销售额(sale_money)..等等 需要用到求和函数 SUM()和分组子句 GROUP BY   按国家和年份分组进行求和汇总(对每一个国家的每一年进行求和) 有两种语句形式: 每年汇总 1.表格形式例如: 国家 年份 销售额 巴西 2014 500000000000 方式一: SELECT  S.country  as 国…
ROUND的格式:ROUND(p1,p2,p3),其作用是取四舍四入值P1:要被四舍五入的数字P2:保留的小数位数P3:如果为0或不输入,则表示进P1进入四舍五入,如ROUND(123.86,1) =123.90 如果P3是不为0的数,则对P1进行截断,可以理解为不四舍五入 ROUND(123.86,1,1)=123.80…
Session的初步介绍 1  Session是服务器端技术,利用这个技术,服务器在运行时可以为每一个用户的不同浏览器(一个用户的不同浏览器将生成不同的session文件)创建一个其独享的session文件, 由于session为用户浏览器独享,所以用户在访问服务器的web资源时,可以把各自的数据放在各自的session中,当用户再去访问服务 器中的其他web资源时,其它web资源再从用户各自的session中取出数据为用户服务. 2  原理示意图 3  session的基本用法(curd)增删…
BS