oracle数据库学习第二天

来源:互联网 时间:1970-01-01

oracle表的管理

表名和列的命名规则

必须以字母开头

长度不能超过30个字符

不能使用oracle的保留字

只能使用如下字符 A-Z,a-z,0-9,$,#等

---------------------------------------------------------------------------

oracle数据类型

字符型

char    定长  最大2000字符。    

例子:char(10)‘小韩’ 前四个字符放‘小韩’,后添6个空格补全(中文一个字占2个字符)。

--char查询起来速度快


varchar2(20)   变长  最大4000字符。

例子:carchar2(10)‘小韩’ oracle分配四个字符这样可以节省空间。


clob(character large object)  字符型大对象  最大4G


数字类型

unmber 范围 -10的-38次方~10的38次方


number(5,2)

表示一个小数有5位有效数,2为小数。

范围-999.99~999.99


number(5)

表示一个五位整数

范围  -99999~99999


日期类型


date  包含年月日和时分秒

timestamp 这是oracle9i对date数据类型的扩展


图片

blob    二进制数据  课余i存放图片/声音     4G

(通常我们只会把图片和声音放在指定的文件夹内。数据库只存放路径。如果保密要求很严格。就存放在数据库内)

-----------------------------------------------------------------------------------------------------------------------------------------------------

建表

命令建表:

例:

---学生表

sql>create table student( --表名xh number(4), --学号xm varchar2(20), --姓名sex char(2), --性别birthday date , --出生日期sal number (7,2) --奖学金);
---班级表

sql>create table classes( classId number(2), cname varchar2(40));

小提示:

1、drop table 表名 ; 删除表

2、表空间就是存放表的空间

3、也可以图形操作建表,添加列中,有个“默认”,意思是在没有没有输入值的时候,默认给他一个值。也可以设置主键。

4、图形界面建立索引,用于提高查询速率。点击应用完成建表

修改表

添加一个字段

sql> alter table student add (classid number(2));
修改字段长度

sql> alter table student modify (xm vachar(30));
修改字段的类型/或是名字(不能有数据)(建议在空表的情况下修改,如果里面有数据会很容易出错)

sql> alter table student modify (xm char(30));
删除一个字段(在工作中最好不要使用,会扰乱程序的读取)

sql> alter table student drop column sal;
修改表的名字

sql>rename student to stu;
删除表

sql>drop table student;


---------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------

添加数据

所有字段都插入

sql>insert into student values('A01','男','01-5月-05',10);


oracle中默认的日期格式‘DD-MON-YY'   dd日子(天)  mon月份  yy 2位的年 ’09-6月-09‘ 1999年6月9号,改日期的默认格式:

sql>alter session set nls_date_format = 'yyyy-mm-dd'


修改后,可以用我们熟悉的格式添加日期类型:

sql>insert into student values ('A002),'mike','男','1905005-06',10);

插入部分字段

sql>insert into student(xh,xm,sex) values('A003','JOHN','女');

插入空值

sql>insert into student (xh,xm,sex,birthday) values ('004','MARTIN','男“,null);


查询表格中空值数据,非空数据

sql>select * from student where birthday is null;
sql>select * from student where birthday <span style="font-family: Arial, Helvetica, sans-serif;">is not null;</span>

---------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------

修改数据

改一个字段

sql>>update student set sex='女' where xh='A001'; 把学号为A001的学生性别该为女
例:

把男性的工资降低为原来的一半

sql>update student set sal=sal/2 where sex='男';

修改多个字段

sql>update student set sex='男',birthday='1980-04-01' where xh ='A001'; 把学号为A001号的学生性别改为男,生日改为1980-04-01

修改含有null值的数据

---------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------

删除数据

sql>delete from student;

删除所有记录,表结构还在,写日志可以恢复的,数度慢。

sql><span style="color:#ff0000;">savepoint</span> a;
删除之前设置回滚点及(保存点)

sql><span style="color:#ff0000;">rollback to</span> a;

删除数据之后,恢复删除的数据。

注:设置保存点的作用在于可以防止不可恢复性错误的出现。

---------------------------------------------------------------------------------

sql><span style="color:#ff0000;">drop table</span> student;

删除表的结构和数据

sql><span style="color:#ff0000;">delete from </span>student <span style="color:#ff0000;">where</span> xh='A001';

删除一条记录

sql><span style="color:#ff0000;">strucate table</span> student;

删除表中的所有记录,表的结构还在,不写日志,无法找回删除的记录,速度快

--------------------------------------------------------------------------------------------------

oracle 表基本查询    

介绍

在我们讲解的过程中我们利用scott用户存在的几张表(emp,dept)为大家掩饰如何使用select语句,select语句在软件编程中非常的有哦那个,需要好好掌握。

小提示:清屏 clear 

-----------

emp表字段的含义

---------

EMPNO 雇员号

ENAME 雇员名称

JOB       雇员职位

MGR      








版权声明:本文为博主原创文章,转载请注明出处。



相关阅读:
Top