Oracle初学者笔记(三)

王朝oracle·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

4,转换函数:

隐式转换;

显式转换:number要到character需要to_char;

character要到number需要to_number;

character要到date需要to_date;

date要到character需要to_char;

character是Oracle中的基本数据类型,你可以

这样理解:

character类型是其他类型转换的中继;

这些函数都有两个参数,第一个是要转换的对象,

第二个参数是格式;

想充分体会这些函数的重要性吗?

如果你的会话中现实日期的格式为:'dd-mm-yy'

而你试图插入一个以字符串表示的日期的话,

那你的字符串必须是'08-10-05'这样的匹配格式;

但是如果你试图插入的格式是'2005-10-08'的话,

你可以有下面两种选择:

1,修改会话为'yyyy-mm-dd';

2,用to_date('2005-10-01','yyyy-mm-dd');

NVL函数:将null值转换为一个实际的值,只有值为空时起作用;

用NVL函数的必要:

任何一个值和null值运算都会得到

一个null值,但实际上我们并不希望如此,

比如如果要计算一个员工年末应该得到的

工资加奖金,如果他没有奖金,那工资和

奖金相加就会是null,但实际上他至少应该拿

到工资而不是null, 所以可以用NVL函数来

指定一个值,比如给没有奖金的员工指定为0;

5,Decode函数:

这个函数非常有用,可以用加薪的例子来说明:

select job,sal,decode(job,'ANALYST',sal*1.1,

'CLERK',sal*1.15,

'MANAGER',sal*1.20,

sal) as jiaxin_salary

from emp;

这表示,工作职位为analyst的人,工资上涨10%,...

其他人员不涨工资;

//**几个重要的SQL-Plus命令:

save '\...' : 保存命令文件;

clear screen: 清楚屏幕;

get '\..' : 读取命令文件到缓存区,但SQL语句并不执行;

@ '\...' :加载并执行;相当于get+run;

connect scott/tiger,连接到oracle;

如果在用户名和密码后跟@主机字符串,就可以

连接到远程的数据库服务器;

//**Oracle的组织的一个很重要的认识:

Oracle中的表是针对用户的,也就是说一个用户对应拥有一些表,

而别的用户是不能直接访问的,必须做如下两件事情才可以:

1,受到要访问的表的用户的授权;

2,用表的拥有者用户.表名;

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有  導航