oracle数据库中函数较多,而且每个函数都有自己的用法,所以要根据具体的函数查询具体的使用方法,比如:
decode(条件,值1,返回值1,值2,返回值2,值n,返回值n,缺省值)
这个函数运行的结果是,当字段或字段的运算的值等于值1时,该函数返回值2,否则返回值3
当然值1,值2,值3也可以是表达式,这个函数使得某些sql语句简单了许多
使用方法:
1、比较大小
select decode(sign(变量1-变量2),-1,变量1,变量2) from dual;
--取较小值
sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1
例如:
变量1=10,变量2=20
则sign(变量1-变量2)返回-1,decode解码结果为“变量1”,达到了取较小值的目的。
2、此函数用在SQL语句中,功能介绍如下:
Decode函数与一系列嵌套的
IF-THEN-ELSE语句相似。base_exp与compare1,compare2等等依次进行比较。如果base_exp和 第i
个compare项匹配,就返回第i 个对应的value
。如果base_exp与任何的compare值都不匹配,则返回default。每个compare值顺次求值,如果发现一个匹配,则剩下的compare值(如果还有的话)就都不再求值。一个为NULL的base_exp被认为和NULL
compare值等价。如果需要的话,每一个compare值都被转换成和第一个compare 值相同的数据类型,这个数据类型也是返回值的类型。
任何软件都有可能在有意或无意的情况下被重新安装,如Oracle重装后数据库怎么恢复呢?情况发生在你是无意的情况下!ORACLE数据库恢复的方法我们经常会用到,下面就为您介绍重装系统后ORACLE数据库恢复的方法,希望对您学习ORACLE数据库恢复方面能有所帮助。
我的电脑突然挂了,不得不重装系统,不过我的ORACLE装在了D盘,所有的文件都还在,我相信一定能够恢复,直到搞定工作,我才开始整我的数据库,花了两天时间,终于恢复了,庆祝一下,同时总结一下,希望有遇到同样问题的朋友能够快速搞定此类问题
第一种:
首先,备份数据库(X:\oracle\oradata)下的数据文件,重新命名即可(否则装数据库的时候会提示sid已存在)。重新安装数据
库,当然数据库的名字就是你要恢复的名字。安装完成后,打开控制面板,停止oracle的服务。把(X:\oracle\oradata)下新生成的文件
改名,把原先目录下的文件恢复名字。再重新启动oracle服务和监听。用sys/as dba
登陆数据库,可能会提示权限不够(ora-01031)修改(X:\oracle\ora92\network\admin
)文件夹下的sqlnetora文件,添加SQLNETAUTHENTICATION_SERVICES=
(NTS),增加权限。登陆进去后,打开table提示不能打开。打开common页,执行命令alert database
open;这时再刷新table,发现原先的表可以打开了。恢复成功了。再用原先数据库的普通用户进入。发现一切正常。至此,大功告成。
第二种:
1、首先,将原来的ORACLE文件夹改名,原来的路径是D:/oracle我暂时改成D:/oracle_old找来ORACLE(我用
的是ORACLE 9I)安装光盘,将ORACLE安装在原来安装的目录下,这样恢复起来更加方便,主要是注册表的内容不用修改。
2、安装完了之后,系统中又有一个可以使用的ORACLE了。这个时候要做的就是将原来的文件和数据恢复过来。第一步,先关闭ORACLE的所
有已经启动的项目,在"服务"里面逐一关闭。然后,将安装目录改名。我现在用的是D:/oracle改成D:/oracle_new再将D:
/oracle_old改成D:/oracle
这样理论上说从物理层面恢复了ORACLE了。但是我们发现,现在还不能启动ORACLE的监听程序和服务程序。我们还要从逻辑上解决。
3、在dos环境下执行一个删除命令:oradim -delete -sid mm,其中mm为创建oracle时候创建的实例
建议执行这个命令后重新启动机器,重启后就可以建立和原来实例名相同的实例。当然你懒,不重新启动也可以,但是你的实例名就不能和原来的一样了。
4、在dos环境下执行命令 oradim -new -sid mm -startmode a -pfile "D:\oracle\admin\mm\pfile\initmmora "创建一个新的实例,其中 "mm"为新数据库的名称。
5、启动服务,先打开数据库,然后可以用以前的用户名和密码登陆进去。
要补充的是,一般的ORACLE数据库的监听程序都是用电脑的名称来识别地址的,而不是127001或者localhost所以,如果我们安装系
统的时候用的是不同的电脑名称(比如我原来用的是wm_mm重新安装后用的是wenming_mm),那么我们还有一个工作要做,就是修改文件
listenerora将里面的相关的东西改过来就可以了。
需要耐心、细心,可能在一步里有一个细小的差别就会出些古怪的错误提示,有时需要根据错误提示采取策略,总之原理是,先装一个一模一样的ORACLE,安装目录、数据库名称都一样,这样保证注册表里不用更改;再覆盖物理文件,最后重新实例化,打开数据库就可以进去了。
Oracle11g安装:
1、解压缩文件,将两个压缩包一起选择, 鼠标右击 -> 解压文件 如图
2、两者解压到相同的路径中,如图:
3、到相应的解压路径上面,找到可执行安装文件 setupexe 双击安装。如图:
4、安装第一步:配置安全更新,这步可将自己的电子邮件地址填写进去(也可以不填写,只是收到一些没什么用的邮件而已)。取消下面的“我希望通过My Oracle Support接受安全更新(W)”。 如图:
5、 安全选项,直接选择默认创建和配置一个数据库(安装完数据库管理软件后,系统会自动创建一个数据库实例)。 如图:
6、 系统类,直接选择默认的桌面类就可以了。(若安装到的电脑是,个人笔记本或个人使用的电脑使用此选项) 如图:
7、典型安装。 重要步骤。建议只需要将Oracle基目录更新下,目录路径不要含有中文或其它的特殊字符。全局数据库名可以默认,且口令密码,必须要牢记。密码输入时,有提示警告,不符合Oracel建议时不用管。 (因Oracel建议的密码规则比较麻烦, 必须是大写字母加小写字母加数字,而且必须是8位以上。麻烦,可以输入平常自己习惯的短小密码即可) 如图:
8、若输入的口令短小简单,安装时会提示如下。直接确认Y继续安装就是了。如图:
9、先决条件检查。 安装程序会检查软硬件系统是否满足,安装此Oracle版本的最低要求。 直接下一步就OK 了。如图:
10、 概要 安装前的一些相关选择配置信息。 可以保存成文件 或 不保存文件直接点完成即可。如图:
11、安装产品 自动进行,不用管。如图:
12、数据库管理软件文件及dbms文件安装完后,会自动创建安装一个实例数据库默认前面的orcl名称的数据库。如图:
13、实例数据库创建完成了,系统 默认是把所有账户都锁定不可用了(除sys和system账户可用外),建议点右边的口令管理,将常用的scott账户解锁并输入密码。 如图:
14、解锁scott账户, 去掉前面的绿色小勾,输入密码。同样可以输入平常用的短小的密码,不必非得按oracle建议的8位以上大小写加数字,麻烦。呵呵。如图:
15、同样,密码不符合规则会提示。不用管它,继续Y即可。如图:
16、安装成功,完成即可。
默认的:最高权限用户:system 密码:manager
管理员权限用户:sys 密码:change_on_install
普通用户:scott 密码:tiger
登陆管理员或超级管理员用户可以自己建立属于自己的用户 :
命令:create user userName identified by password;
创建用户名为: userName, 密码为 password 的用户
分配权限:
grant dba to userName; --授予DBA权限
grant unlimited tablespace to userName;--授予不限制的表空间
grant select any table to userName; --授予查询任何表
grant select any dictionary to userName;--授予 查询 任何字典
访问的前提需要知道数据库的IP地址,端口号,服务名,用户账号及密码。
知道上述内容后,本地需要安装oracle客户端。
1、在oracle的安装目录下,如:“C:\oracle\product\1020\db_1\network\ADMIN”找到tnsnamesora文件,以文本的形式打开,添加以下内容:
本地实例名 =(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 数据库IP地址)(PORT = 数据库端口号))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = 数据库服务名)
)
)
2、保存文本内容。
3、使用第三方工具,如plsql,如图可以看到刚才添加的内容:
以上就是关于刚安装好oracle数据库怎么使用全部的内容,包括:刚安装好oracle数据库怎么使用、重装系统怎么恢复oracle数据库、oracle 数据库安装问题 my oracle support怎么获得等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)