Oracle DB
索引
一、安装
1、Oracle首先询问用户是否接受更新信息,一般选择不接受;
Oracle安装选项,需为其配置数据库,所以此处会询问是否创建安装数据库,选择是
系统类型,一般选择服务器类型;
网络安装选项,本次不牵涉Oracle的RAC管理(AIX+Oracl配置),选择单实例即可;
安装类型,选择高级安装配置(为了能方便进行配置);
数据库版本,选择企业版本(最全);
安装目录选择;
数据库名称定义为“mldn”
配置选择中,将字符编码设置为UTF-8,若此处没有设置,出现中文时又能会乱码,随后在示例方案,创建所有样本数据;
直到方案口令,为方面管理可将用户/密码统一设为“oracleadmin”(不符合oracle标准);
直接到先决条件检查,如果检查出错,直接选择忽略即可;
随后启动oracle的安装程序;
本次会自动实现数据库的创建,但每一个数据库需我们额外配置,随后使用口令管理程序,主要操作以下用户(设置经典口令)
·超级管理员:sys/change_on_install;
·普通管理员:system/manager;
·普通用户:scott/tiger,需解锁;
·大数据用户:(样本数据库才有):sh/sh,需解锁;
这时,oracle软件安装完成,数据库也安装完成。
但,安装完成后oracle相关服务自动设置为自动启动,建议设为手动启动,每次启动时只需启动两个服务即可:
·oracleoradb11_home1TNSListener:是监听服务
·oracleServiceMLDN:数据库的实例服务,他的命名标准:oracleServiceSID:(默认下SID名称与数据库名称一致,网络上使用的是SID的名称,每当新增数据库时,会自动增加该服务)
Oracle卸载,卸载后可能无法立即安装成功
Oracle正常安装完成的卸载:
·使用Oracle提供的卸载程序(Universal Installer)
·重启电脑进入安全模式(启动时按住F8)
·找到系统安装oracle对应的磁盘路径,并且删除(安全模式);
·运行注册表命令“regedit.exe”,搜索所有与oracle有关内容并删除;
·重启电脑就可以重新安装;
Oracle安装失败原因:
·重启电脑进入安全模式(启动时按住F8)
·找到系统安装oracle对应的磁盘路径,并且删除(安全模式);
·运行注册表命令“regedit.exe”,搜索所有与oracle有关内容并删除;
·重启电脑就可以重新安装;
Oracle的两个服务:
·如果通过程序链接,必须启动监听服务;
·所有的数据都保存在实例服务之中。
二、sqlpius命令
1、格式化命令:
(1)设置每行的长度:SEL LINESIZE 长度
(2)设置每页的长度:SEL PAGESIZE 长度
2、切换用户:
CONN 用户名/密码 [AS SYSDBA],如果是sys用户一定要写SYSDBA
CONN system/manager
CONN sys/change_on_install AS SYSDBA
3、调用本机命令:HOST作为前缀
三、sql和数据表分析
scott表结构
当前用户下所有表:SELECT * FROM tab;
查询一个表的结构:DESC 表名;
NUMBER(7,2);表示小数最多占2位,整数部分最多5位,
COL 列名 FOR A10;10为为列指定宽度,
四、基本查询
1、SELECT [DISTINCT] * | 列名称 [别名],列名称 [别名]... FROM 表名[别名];
2、表中的常量设置:
①如果是字符串,则使用“'”声明,例如'hello'
②如果是数字,则直接编写,如10;
③如果是日期,则应按照日期风格格式编写“xx日-xx月-xx年”
3、可以使用双||拼接字符串结果,
五、限定查询
1、关键运算符:
①关系运算符:>,<,>=,<=,<>,!=
②逻辑运算符:AND、OR、NOT
③范围运算符:BETWEEN。。。AND
④谓词范围:IN、NOT IN
⑤空判断:IS NULL,IS NOT NULL NOT IN 不能和NULL同时出现,
⑥模糊查询:LIKE
“_”匹配一个字符,“%”匹配任意个字符,
0&NULL:卖0元和无价是不同的概念,
六、序列
1、Order BY
③SELECT *
①FROM T
②WHERE 过滤条件
④ORDER BY 字段【ASC|DESC】,字段【ASC|DESC】,字段【ASC|DESC】,
七、单行函数
dual是验证查询的虚拟表,
1、字符串函数
UPPER(),LOWER(),INITCAP(),LENGTH(),SUBSTR(),REPALCE(),
2、数值函数,
ROUND(列|数字【,小数位】),TRUNC(列|数字【,小数位】),MOD(列|数字,列|数字),
3、日期函数
SYSTEMDATE,ADD_MONTHS(列|日期),MONTHS_BETWEEN(列|日期,列|日期),LAST_DAY(列|日期),NEXT_DAY(列|日期)
4、转换函数
TO_CHAR(列|日期|数字,格式),
数字,9表示任意数字:,L表示本地货币符号,
TO_DATE(列|字符串,转换格式),TO_MEMBER(列|字符串,)
5、通用函数,
数字 NVL(列|NULL,默认值)
数值类型 DECODE(列|字符串|数值, 比较内容1,显示内容1,比较内容2,显示内容2,...【默认显示内容】)
八、多表查询
基本结构
③SELECT [DISTINCT] *|列 [别名],*|列 [别名]...
①FROM T [别名],T [别名]...
②WHERE 过滤条件(s)
④ORDER BY 字段【ASC|DESC】,字段【ASC|DESC】,字段【ASC|DESC】,
1、基本查询 分步骤实现
2、表的连接
①内连接(等值连接):所有满足条件的数据都会被显示出来,
只有符合WHEREW子句条件的才会显示出来,
②外连接(左外连接, 右外连接,全外连接):控制左表与右表的数据是否全部显示出来,
3、SQL1999
SELECT [DISTINCT] * | 列 [别名]
FROM 表名称1
[CROSS JOIN 表名称2]
[NATURAL JOIN 表名称2]
[JOIN 表名称 ON(条件) | USING(字段)]
[LEFT | RIGHT | FULL OUTER JOIN 表名称2];
交叉连接:实现笛卡尔积
自然连接:自动通过关联字段消除笛卡尔积,一般关联字段是外键,但此处是以名称相同为主,内连接,
USING子句只在一张表有多个关联字段情况下,明确使用一个字段关联,
ON子句用来设置关联条件,
数据集合操作
UNION,连接,重复数据只显示一次,
UNION ALL,显示重复数据,
INTERSECT,返回交集部分,
MINUS,返回差集,第一个集合减第二个集合,
九、分组统计查询
1、统计函数
COUNT(),MAX(),MIN(),SUM(),AVG(),
2、分组 GROUP BY
①在未使用GROUP BY时,查询子句中只允许统计函数和查询字段中的一种,
②在使用GROUP BY子句时,查询子句中只允许出现分组字段和统计函数,
③统计函数允许嵌套查询,但嵌套后的统计查询中不允许再使用任何字段,
【⑤确定要使用的数据列】SELECT[DISTINCT]分组字段[别名],...|统计函数
【①确定要查找的数据源】FROM
[【②针对于数据行的筛选】WHERE过滤条件]
[【③针对于数据实现分组】GROUP BY 分组字段,分组字段,...]
[【④针对于分组后的数据进行筛选】HAVING分组后的过滤条件]
[【⑥针对于返回结果进行排序】ORDER BY 字段[ASC|DESC],...];
【WHERE&HAVING】
-WHERE发生GROUP BY之前,用于从数据源筛选数据,不允许使用统计函数,
-HAVING是发生在分组之后,用于对分组结果进一步筛选,可以使用统计函数,
十、子查询
1、可能的位置
①WHERE子句,返回单行单列,单行多列,多行单列,
②HAVING子句,返回单行单列,表示要使用统计函数,
③FROM子句,返回多行多列,
④SELECT子句,返回单行单列,
十一、数据更新
十二、事务处理
Oracle DB的更多相关文章
- 在silverlight中通过WCF连接ORACLE DB数据库(转)
转自 http://hi.baidu.com/qianlihanse/item/458aa7c8d93d4e0cac092ff4 这不是我的原创,我也是上网学习的~ How to get data f ...
- Oracle DB 存储增强
• 设置Automatic Storage Management (ASM) 快速镜像 再同步 • 使用ASM 首选镜像读取 • 了解可伸缩性和性能增强 • 设置ASM 磁盘组属性 • 使用SYSA ...
- goldengate 12c对oracle DB的改进
1. 现在可使用Oracle Universal Installer,即安装时有图形化界面,同时会自动安装java runtime environment,不过个人认为,还是ZIP安装包方便,解压即用 ...
- Oracle DB 使用调度程序自动执行任务
• 使用调度程序来简化管理任务 • 创建作业.程序和调度 • 监视作业执行 • 使用基于时间或基于事件的调度来执行调度程序作业 • 描述窗口.窗口组.作业类和使用者组的用途 • 使用电子邮件通知 • ...
- Oracle DB 管理数据库的空间
• 描述4 KB 扇区磁盘的概念及使用 • 使用可移动表空间 • 描述可移动表空间的概念 数据库存储 数据库存储 数据库包括物理结构和逻辑结构.由于物理结构和逻辑结构是分开的,因此管理数据的物 理存储 ...
- Oracle DB 执行表空间时间点恢复
• 列出在执行表空间时间点恢复(TSPITR) 时会发生的操作 • 阐释TSPITR 使用的术语的定义 • 确定适合将TSPITR 用作解决方案的情况 • 确定时间点恢复的正确目标时间 • 确定不能使 ...
- Oracle DB 备份和恢复的概念
• 确定Oracle DB 中可能发生的故障类型 • 说明优化实例恢复的方法 • 说明检查点.重做日志文件和归档日志文件的重要性 • 配置快速恢复区 • 配置ARCHIVELOG模式 部分工作内容 ...
- 用户与 Oracle DB 交互具体过程
与 Oracle DB 交互 以下的演示样例从最主要的层面描写叙述 Oracle DB 操作.该演示样例说明了一种 Oracle DB 配置,在该配置中,用户和关联server进程执行于通过网络连接的 ...
- 普通用户登录Oracle DB Control
使用 sys 或者 system 用户登录 Oracle DB Control 是没有问题的. 但是,如果是普通的用户需要登录Oracle DB Control,建表或者视图之类的, 则需要授权 SE ...
- Test oracle db iops
Today, i need to test one database's iops and do something for oracle db's io test. How to test the ...
随机推荐
- 《剑指offer》二叉树中和为某一值的路径
本题来自<剑指offer> 反转链表 题目: 思路: C++ Code: Python Code: 总结:
- laravel 兜底路由
在 Laravel 5.6 中,引入了兜底路由功能.所谓兜底路由,就是当路由文件中定义的所有路由都无法匹配用户请求的 URL 时,用来处理用户请求的路由,在此之前,Laravel 都会通过异常处理器为 ...
- codeforce 240E 最小树形图+路径记录更新
最小树形图的路径是在不断建立新图的过程中更新的,因此需要开一个结构体cancle记录那些被更新的边,保存可能会被取消的边和边在旧图中的id 在朱刘算法最后添加了一个从后往前遍历新建边的循环,这可以理解 ...
- Moco使用简单指导
下载地址 需要java运行环境支持.下载jar包:moco-runner-<version>-standalone.jar 配置文件 下面是参考: 配置 Moco的配置文件格式使用的是js ...
- python基础知识之zip
names =['zhangning','lsl','lyq','xww']age = [1,2,3,4]for a,b in zip(names,age): print(a,b)S = 'abcde ...
- DevOps 在公司项目中的实践落地
原文出处:https://www.cnblogs.com/beef/p/7743594.html ref: [DevOps]团队敏捷开发系列--开山篇 https://www.cnblogs.com/ ...
- 现在k8s新版里,如何在每个node上运行一个带privileged的daemonset
以前,我们会在kubelet上加--allow-prividged启动参数来实现. 而现在,更推荐的是用pod secureity policy来实现.前面的那种方式以后会被废弃. https://k ...
- Kubeadm安装的K8S集群1年证书过期问题的解决思路
这个问题,很多使用使用kubeadm的用户都会遇到. 网上也有类似的帖子,从源代码编译这种思路, 在生产环境,有些不现实. 还是使用kubeadm的命令操作,比较自然一点. 当然,自行生成一套证书,也 ...
- js数字货币格式互转
//将1,234,567.00转换为1234567.00 function moneyToNumValue(val) { var num = val.trim(); var ss = num.toSt ...
- [TJOI2018]智力竞赛【网络流】
题解: 这垃圾题意 问题二分之后等价于 可重复路径判断能否覆盖一张图 1.用floyd连边(来保证可重复) 然后拆点跑最大流 然后答案=n-最大流 但这样子做本来复杂度就比较高,边数增加了n倍 2.我 ...