第43次(Oracle数据库的使用)

学习主题:Oracle数据库的使用

学习目标:

1 掌握数据库相关概念

2 掌握oracle的安装,认识oracle的目录以及系统用户

3 掌握oracle常用命令

对应作业

1. 数据库相关概念

(1) 请解释什么是DB, DBMS, DBAS, DBA, DBS?

1、数据库(Data Base,DB)是按一定结构组织并长期存储在计算机内的、可共享的大量数据的有机集合。其实就是存放数据的仓库,只不过这些数据存在一定的关联、并按一定的格式存放在计算机上。例如,把一个学校的学生、课程、学生成绩等数据有序的组织并存放在计算机内,就可以构成一个数据库。

2、数据库管理系统(Data Base Management System,DBMS)是管理和维护数据库的系统软件。常用的DBMS有:Oracle、DB2、SqlServer、MySql等

3、数据库管理员(Date Base Administrator ,DBA)管理操作数据库人员。

4、数据库系统(Data Base System,DBS)是实现有组织的、动态地存储大量关联数据、方便多用户访问的计算机软件、硬件和数据资源组成的系统,简化为:DBS=计算机系统(硬件、软件平台、人)+DBMS+DB

5、数据库应用系统(DBAS)在数据库管理系统的基础上,使用数据库管理系统的语法,

开发直接面对最终用户的应用程序

学生管理系统,人事管理系统,图书管理系统

(2) 请列举常用的关系型数据库并简述其特点.

关系型数据库简称 RDBMS, Oracle、MySQL、SQLServer 等数据库,这些都是我们常用的关系型数据库。

关系型数据库的特点是它可以保存数据库中的各种关系。

2. Oracle入门

(1) 简述Oracle数据库的版本变更及特点.

1979年RSI(Oracle公司的前身,Relational Software,Inc)发布了Oracle第二版。

1983年RSI发布了Oracle第三版。增加了了一个关键的特性--可移植性。

1984年10月,Oracle(RSI更名为Oracle)发布了第4版产品。这一版增加了读一致性这个重要特性。

1985年,Oracle发布了5.0版。这个版本是Oracle数据库较为稳定的版本。实现了C/S模式工作。

1986年,Oracle发布了5.1版。该版本开始支持分布式查询。

1988年,Oracle发布了第6版。该版本中引入了行级锁特性,同时还引入了联机热备份功能。

1992年6月,Oracle发布了第7版。该版本增加了包括分布式事务处理功能、用于应用程序开发的新工具及安全性方法等功能。

1997年,Oracle第8版发布。Oracle8支持面向对象的开发及新的多媒体应用。

1998年9月,Oracle公司正式发布Oracle 8i。正是因为该版本对Internet的支持,所以,在版本号之后,添加了标识i。

2001年6月,Oracle发布了Oracle 9i。

2003年9月,Oracle发布了Oracle 10g。这一版的最大特性就是加入了网格计算的功能,因此版本号之后的标识使用了字母g,代表Grid--网格。

2007年7月11日,Oracle发布了Oracle 11g。Oracle 11g实现了信息生命周期管(Information Lifecycle Management)等多项创新

(2) 什么是C/S? 什么是B/S? 请简述两者区别.

C/S体系结构指的是客户端/服务端 例如;QQ

B/S体系结构指的是浏览器/服务端 例如12306(网站);购物网站

区别

C/S :优点:交互性好,对服务器压力小,安全 ;缺点:服务器更新时需要同步更新客户端

B/S:优点:不需要更新客户端 缺点:交互性差,安全性低

3. Oracle的安装和卸载

(1) 请简述Oracle的卸载步骤?

1停止使用 Oracle 的服务

2运行卸载 Oracle 数据库程序

3删除使用 Oracle 的服务

4删除注册表中 Oracle 相关项

5删除 Oracle 环境变量

6删除“开始”菜单中 Oracle 目录

7重新启动计算机

8删除 Program FilesOracle 目录

9删除 Oracle 安装目录

(2) 请简述什么是SID?

SID也就是安全标识符(Security Identifiers),是标识用户、组和计算机帐户的唯一的号码。在第一次创建该帐户时,将给网络上的每一个帐户发布一个唯一的 SID

4. Oracle目录结构和系统用户

(1) 请列举三个Oracle的系统用户及其默认密码

超级管理员:sys/chang_on_install

普通管理员:system/manager

普通用户: scott/tiger ,此用户在使用的时候需要先进行解锁

(2) 请列举三个Oracle常用目录并说明作用

appadministatorproduct11.2.0dbhome_1jdbclib

JDBC访问Oracle的驱动jar包

• appadministatorproduct11.2.0dbhome_1NETWORKADMIN

• listener.ora和tnsnames.ora,配置监听器和本地网络服务名

• appadministatorproduct11.2.0dbhome_1jdk

• Oracle自带的JDK

• appadministatorproduct11.2.0dbhome_1deinstall • 执行其中的deinstall.bat进行第一步卸载操作

• appadministatorproduct11.2.0dbhome_1install • 其中的有oracle常用访问的端口列表

• appadministportlist.iniatororadataorcl • 指定数据库实例下的数据文件,控制文件和日志文件

5. Oracle客户端

(1) 请问Oracle的常用客户端有哪些?

1、SQLPlus:一个命令行客户端,oracle自带,不需要安装其他的软件,使用效果不好。

2、PLSQL Development:图形界面的客户端,第三方专门给Oracle数据库提供的客户端,必须安装软件,使用效果好。

(2) 如何使用SQL Plus连接Oracle?

开始菜单的oracle目录中点击应用程序开发的SQLPlus,输入账号和密码就可以使用

6. Oracle常用命令及练习表

(1) 列举常用的Oracle命令有哪些?

查看用户所有的表格:select * from tab;

查看表结构:desc 表名;

查看表格数据:select *from 表名;

显示当前登录的用户:show user;

退出:exit;

(2) 如何使用命令连接Oracle SQL Plus?

cmd窗口中输入sqlplus就可以了

7. Oracle连接配置(listener.ora和tnsnames.ora)

(1) 请问出现如下问题的可能原因是什么? 如何解决?




java 连接nacos配置 账号密码_navicat连接oracle无监听程序


A)监听程序刚启动,还没有反映过来

B)配置信息可能读取不到了,需要重新配置Oracle连接(监听装置)

(2) 请说明listener.ora和tnsnames.ora在Oracle中分别起什么作用?

① 服务器端的监听器的配置信息有:监听协议(如:TCP/IP)、地址(端口号)、其他相关信息,并将上述配置信息保存在listener.ora文件中,在安装服务器软件时自动配置了一个监听器。

②客户端的网络服务名的配置信息有:服务器地址、监听端口号、数据库SID,与服务器的监听器建立连接,保存于tnsnames.ora中。

分享/讲解/扩展思考

点名提问从第一节课到最后一节课分别学到了什么,直到同学们把所有的知识点都说出来并且保证无误。

第44次(SQL语言)

学习主题:SQL语言

学习目标:

1 掌握sql语言基础

2 掌握select子句 distinct关键字

3 掌握字符串连接,order by排序

4 掌握模糊查询,where子句,等值判断,非等值判断,为空判断等条件

对应视频:

http://www.itbaizhan.cn/course/id/85.html

对应作业

8. SQL语言基础

(1) 什么是SQL?

1、结构化查询语言,是最重要的关系数据库操作语言和标准语言。

2、很多厂商对Oracle进行了扩展,比如oracle的PL/SQL语言微软的T-SQL

3、SQL也是一种非过程化语言,只需要提出做什么,而不需要指明怎么做

(2) 使用SQL语言可以做什么?

1、数据库数据的增删改查操作

2、数据库对象的创建,修改和删除操作

3、用户权限/角色的授予和取消

4、事务管理

(3) SQL语言的分类有哪些?

1、DQL, Data Query Language,数据查询语言

执行数据库的查询操作,select

2、DML,Data Manipulation Language,数据操作语言

执行增删改的操作,insert, delete update

3、DDL ,Data Defination Language 数据定义语言

用于操作数据库对象 add,modify,drop

4、DCL Data Control Language 数据控制语言

操作用户权限,grant,revoke

5、TCL Transaction Control Language事务控制语言

用于管理事务,commit,rollback

9. select子句

(1) select子句中如何定义列别名?

1、可以通过as关键字给列起别名

2、as可以被省略,一般都省略(中间需要加空格)

3、别名中,尽量不要使用特殊符号,例如空格;如果非要有特殊符号,可以使用双引号括起来,在oracle中双引号表示原样输出

(2) 请总结select在sql语句中的作用.

用于查询表格中的数据

10. Distinct_字符串连接符_order by

(1) Distinct在sql语句中的作用是什么?

用于去除重复行信息

只能去除重复行,distinct的作用范围是它后面的所有列

(2) Oracle中用什么符号描述字符串?举例说明如何实现字符串的拼接?

字符串连接符:||

单引号表示字符串:‘’

Select‘姓名:’||ename||‘职位:’||job from emp;

11. Where子句_等值条件和非等值条件

(1) where在SQL语句中有什么作用?

用于进行条件过滤;

1、字符串必须加单引号,而且大小写敏感

2、日期必须用单引号扩起来,而且格式必须是DD-MM月-YY(月条件比较严格,不能随便乱写)

(2) 请说明between和and在SQL语句中的含义?

表示一个范围,包含边界

Or和in作用相同 !=和<>相同

12. Where子句_模糊查询

(1) 模糊查询中使用的关键字是什么?与之配合的通配符有哪些?分别表示什么含义?

like

1、%表示零个或多个字符的任意字符串

2、_下划线表示任何单个字符

3、[]表示指定范围[a-f]或集合中的任何单个字符

4、^不属于指定范围的任意单个字符

5、*他同于DOS命令中的通配符,代表多个字符

6、?同于DOS命令中的?,通配符,代表单个字符

7、#大致相同,不同的是只代表单个数字

(2) 请说明ESCAPE在模糊查询中的使用场景

在模糊查询中声明转义字符

13. Where子句_IS NULL_优先级

(1) 查询所有有提成的员工中, 工资大于1500的员工的信息.

select * from emp where comm is not null and sal >1500;

(2) 查询所有CLERK的信息和工资大于1250的SALESMAN的信息

select * from emp where job='CLERK'or job='SALESMAN'and sal>1250;

(3) 查询所有工资大于1250的CLERK和SALESMAN的信息

select * from emp where (name=’CLERK’or name=’SALESMAN’) and sal>1250;