oracle实例名、数据库名与服务名的理解
实例名(instance_name),一个用于数据库和操作系统之间通信的标志,数据库和操作系统之间要进行交互用的就是实例名,实例名可以和数据库名相同,一会再说数据库名,一般一个数据库名对应一个实例名,一对一关系,但在oracle的集群应用中,数据库名和实例名就是一对多的关系了。
查看实例名:select instance_name from v$instance;
oracle_sid与instance_name的关系:同样都是实例名,instance_name是oracle数据库参数,而oracle_sid是操作系统环境变量,操作系统所访问的实例名,必须是oracle_sid,oracle_sid必须与instance_name一致。
数据库(db_name)名就是数据库的唯一标识,相当于人的身份证一样,数据库名在创建时应该就要考虑好,后面尽量不要修改,因涉及修改的地方比较多,容易出错,在创建数据库create database时,其中的参数必须是DB_name,否则会出错,修改数据库时同理。注,这边的创建数据库其实是创建数据库文件,也就是俗称的用户。
查看当前数据库名:select name from v$database;
服务名(service_name),一般来讲,数据库服务名与数据库名相同。
查看服务名:select value from v$parameter where name = 'service_name';
上述均为个人观点,如有不对请多多指正,共同进步!
相关文档:
从游标提取数据
从游标得到一行数据使用FETCH命令。每一次提取数据后,游标都指向结果集的下一行。语法如下:
FETCH cursor_name INTO variable[,variable,...]
对于SELECT定义的游标的每一列,FETCH变量列表都应该有一个变量与之相对应,变量的类型也要相同。
例:
SET SERVERIUTPUT ON
DECLARE
......
对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,而且rownum不能以任何表的名称作为前缀。
举例说明:
例如表:student(学生)表,表结构为:
ID char(6) --学号
name ......
The following are number examples for the to_char
function.
to_char
(1210.73,
'9999.9')
would return '1210.7'
to_char
(1210.73,
'9,999.99')
would return '1,210.73'
to_char
(1210.73,
'$9,999.00')
would return
'$1,210.73'
to_char
(21,
'000099')
would return '000021'
The foll ......
Oracle数据库系统根据初始化参数文件init.ora中设置的参数来配置自身的启动,每个实例在启动之前,首先读取这些参数文件中设置的不同参数。
Oracle系统中的参数,根据系统使用情况可以简单分为两大类:
普通参数:也就是Oracle系统正常使用的一些参数,
非凡参数:包括三种,过时参数、强调参数和隐藏参数。
随着Orac ......
最近发现一个比较有意思的问题:
当我们在执行一条查询语句时,如果条件谓词中含有函数,如 abs(age)<10,此时,通过查询计划看到的结果集的基数值与实际的值相差很大。当我们改变查询条件时,如abs(age)<20,这时的基数值不会改变,和abs(age)<10得到的基数值一样。
但现在还没找到问题的原因,searching... ......