Oracle安装及基本使用
一、 具体内容
Oracle 是一个生产中间件和数据库的较大生产商
1.1 Oracle安装
现在使用的Oracle使用Oracle9i版本,Oracle主要版本如下:
l Oracle8
l Oracle8 i-Ineternet,表示Oracle此时正在进军互联网
l Oracle9i Oracle9i和Oracle 8i是非常相似的
l Oracle10g g表示网格技术
例如以baidu为准,现在使用一个软件,但是此软件离自己非常近的地方就存在了下载地址,但是与自己非常远的地方也存在一个下载地址,是否可能利用搜索引擎没有搜索到最近的下载,而搜索到离自己很远的下载,这就造成了网络资源的浪费
所以新的网络概念就划分成一个个网格,通过网格表示一个区域
选择oracle9i 下的autorun/ autorun.exe,当无法安装时将系统的防火墙禁用
此时将oracle安装E盘之中,然后按正常流程安装
选择企业版本进行安装
端口号由默认的2030改为1521,数据库全局名“ffcs”,其实选择默认
安装完成后,任何按钮都不要点,因为有些用户需要解锁操作,如果没有配置成功,则只能通过命令行来
默认口令配置
l 普通管理员SYSTEM密码设置manager(默认密码)
l 超级管理员,sys用户的密码change_on_install(默认密码)
选择口令管理,主要观察以下用户
l 普通用户Scott用户密码设置成tiger
l 普通管理员SYSTEM密码设置lin
l 超级管理员,sys用户的密码ffcs
注:口令管理不可以设置同默认口令一样的密码
此时,选择确定,就可以使用固定的用户名和密码进行连接了;完成之后直接选择退出即可,否则会重复安装一遍,此时会启动一个EM(企业管理器)的工具,在学习中一般不使用这个前台的,直接关闭即可。
Oracle安装完成后实际上会在系统中进行服务的注册,在注册服务中有以下两个服务必须启动,否则oracle无法正常使用、
OracleMTSRecoveryService、和OracleOracleAgent修改成手动启动,并停止启动
OracleOracleTNSListener表示监听服务,如果要想连接数据库,此服务必须打开,在日后的程序开发中此服务起作用
OracleServiceFFCS表示oracle数据库的主服务,命名规则:OracleService加全数据库名,此服务必须启动,否则oracle无法正常使用
但必须配置环境变量
之后直接通过命令行方式 就可以直接进入sqlplus的控制中心,进入命令的输入
1.2 Sqlplus
Sqlplus是Oracle提供的一个命令行的工具软件,安装之后会直接自动在系统中注册
Sqlplus有两种命令,以命令行的方式进入数据库连接
Sqlplusw以窗口的形式启动命令行工具
在使用此命令的时候会出现一个主机字符串,如果一台电脑上有多个数据库的话,则要在此处输入数据库的名称,先前的是“ffcs”,不选择则默认最后一个,连接到数据库之上,那么就可以进行查询操作了。
连接成功结果
在一个数据库中会有多张表,每张表都会有其记录
现在输入以下的命令
Select * from emp;
此时原本一行显示出来的数据,则显示的格式混乱,这是因为如果要想使用sqlplusw则首先进行环境变量的配置,
设置每行使用的长度:
Set linesize 300;// 设置行长度 |
如果指令如下:会报SP2-0268: linesize option not a valid number错误
Set linesize =300;// 设置行长度 |
查询指令:
select * from emp; |
以上程序查询完之后,又会有新的问题,因为标题行重复了,这是因为oracle中的数据是采用一页一页的显示进行输出的。
修改每页显示记录的长度:
Set pagesize=30;//设置每页的长度为30 |
基本上就是使用sqlplusw的方式完成操作
set wrap on/off 查询返回的纪录每行超过默认宽度时,可选择换行(on )或不换行(off),默认为换行;
Oracle课堂2_SQLPlusw操作
在sqplus中存在大量的可用指令,在sqplus中因为没法修改输入的内容,所以一般使用本机的记事本进行编译,直接在命令窗口输入”ed 文件名称”,输入后会提示是否创建文本文件,选择是,在文本中输入
编辑完成之后保存,使用@文件名即可使用指令。
除了可以在sqlplus中建立这个文件之外,也可以通过@找到磁盘上的文件。现在在E盘上有一个demo.txt,文件中也是查询指令。
执行的时候指定文件的路径,@路径,效果是完全一样的
省略”\”亦可
如果文件的后缀名称是”*.sql”,则不用输入后缀名称也能找到,默认找到文件的后缀为”*.sql”
在sqlplus中也可以使用其它的用户连接,如sys或system用户
Conn用户名/密码[AS SYSDBA|SYSOPER] |
如果现在连接的是超级管理员[sys],后面必须写上[AS SYSDBA],以系统管理员的身份进行登陆
Conn sys/change_on_install as sysdba |
SQL> conn sys/ffcs as sysdba; Connected. |
那么这个时候再输入之前的查询指令,会提示以下错误
SQL> select * from emp; select * from emp * ERROR at line 1: ORA-00942: table or view does not exist |
此错误表示emp不存在,是因为emp是属于scott用户下的表,而sys用户本身没有,如果在不同用户下想访问emp表的话,则必须加上用户名,即表的完整名称”scott.emp”
select * from scott.emp; |
显示结果如下
如果现在想知道当前连接的用户是那个?
Show user; |
运行结果
SQL> show user; USER is "SYS" |
一个数据库中会存在多张表,那么可以通过以下命令获得数据库中的全部表名称(转用移到scott用户下)
Select * from tab; |
运行结果
在开发中最多的是查看表的结构。例如,可以使用desc指令来查看一个表的全部结构
desc emp; |
在列的类型中主要有以下几种类型
n NUMBER(4) 表示是长度,长度为4
n VARCHAR(10)表示字符串,只能容纳10个长度
n DATE表示日期
n NUMBER(7,2)表示数字,其中小数位占2位,整数位占5位,总共7位
在sqlplusw可以使用 “/”表示继续执行上一个指令。