日期:2014-05-16  浏览次数:20450 次

Oracle 数据库(2)
  Dual系统表介绍

数据类型:
   数据是信息数字表现形式,信息的加工处理是以大量的结构化数据为载体进行的,数据库管理系统的核心是数据库,数据库的主要对象是表,表是结构化数据存储的地方.
   Oracle系统也提供了大量的数据类型主要包括两大类:
用户自定义的数据类型
内置的数据类型
A、字符型
字符数据类型可以用于声明包含了多个字母数字数据的字段。
固定长度的字符类型
char:用于存储固定长度的字符,一旦声明长度固定(不论你存储的实际大小,但是大小绝对不能大于声明的长度)长度不足时,采用空格补充。1B的默认大小,最大尺寸为2000B。

Nchar与char的解析是一样的不过,ncarh存储的是Unicode字符数据。

可变长度的字符类型
varchar与char类似,但是它是用于存储可变的字符串,而char用于存储固定的字符串。
Nvarchar与varchar解析是一样的,不过nvarchar用于存储的数据位双字节的数据。
日期型
  date 短日期格式(1990-10-10)
  Timestamp长日期格式(1990-10-10 10:10:10)
数字型
Number(2),代表:声明一个2位数字的整数。
Number(3,2)代表:声明为3数字位,并且小数后有2位。

文本型-lob数据类型
Blob:可以存储图像,音频文件及视频等文件。
Clob:字符格式的大型对象,oracle数据unicode格式的编码
Bfile:用于存储二进制格式的文件。
--------------------------------------------------------------------------rowid 伪劣类型:用于在oracle内部保存表中的每条记录的物理地址。


创建表

插入语句:
向表中插入一条新的(全字段)记录
SQL> insert into emp(empno,ename,job,mgr,hiredate,sal,comm,deptno) values(1111,'test','test','7369',to_date('1992-12-12','yyyy-mm-dd'),100,100,20);
1 row inserted
或者写成
SQL> insert into emp values(2222,'test','test','7369',to_date('1992-12-12','yyyy-mm-dd'),100,100,20);
1 row inserted
都过查询即可看到结果
SQL> select * from emp;

EMPNO ENAME  JOB        MGR HIREDATE       SAL      COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7369 SMITH   CLERK   7902 1980-12-17    800.00               20
……….//省略部分
1111 test      test      7369 1992-12-12    100.00    100.00     20
2222 test      test      7369 1992-12-12    100.00    100.00     20
向表中插入一条新的(部分字段)记录
SQL>  insert into emp(empno,ename,hiredate,deptno) values(3333,'test',to_date('1992-12-12','yyyy-mm-dd'),30);
1 row inserted
注意:在插入操作的时候如果有关联,一定要插入相应关联的字段的值.

备注:插入之后都需要手动的提交 commit;
SQL> commit;
Commit complete






         SQL是structured Query Language(结构化查询语言)的缩写。可以使用sql语句建立或删除数据库的对象,插入,修改和更新数据库中的数据,并且可以对数据库执行各种日常管理的操作。它是所有关系数据库管理系统的标准语言.换句话说使用sql可以对所有的关系数据库进行操作。
   SQL按照功能分类:
数据库定义语句
DDL(Data Definition Language):用于创建、修改、删除数据库对象。
数据库操作语句
DML(Data Manipulation Language)用于:查询,添加修改或删除存在数据库对象中的数据。
数据库控制语句DCL
DCL(Data Control Language)用于控制访问数据库中特定对象的用户、grant revoke
Oracle系统中经过对Sql语言扩展被称为PL/SQL语言。

基本的sql语句
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table;

SQL> select * from emp;//查询所有的字段信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp;//查询所有
SQL> select empno from emp;//查询部分字段
SQL> select empno "员工编号" from emp;//采用别名查询
SQL> select empno as "员工编号" from emp;//采用别名查询 等效于上面的效果
SQL> select distinct(hiredate) from emp;//查询所有员工的入职日期并且去掉重复的日期
SQL> select sal+comm from emp;//注意:包含空值的数学表达式求出的结果为空值
SQL> select empno||ename from emp;//||连接符 把empno与ename作为一个字段显示
SQL> select empno||ename  as "员工编号和员工姓名" from emp;//效果同上
SQL> select '员工的编号是'||empno from emp;//字符的链接
SQL> select '姓名为'||ename||'员工,所在的部门是:'||deptno as "新列" from emp;//字段的链接包号字符连接
SQL> select distinct(deptno) from emp;//查询去掉重复行的员工部门编号

条件查询
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table
[WHERE condition(s)];
Condition(s)要使用到比较运算符常用的比较运算符如下:
操作符 含义