(2)oracle管理表

1.认识表

今天学习关于操作表的内容:

  • 认识表,知道表的一些概念;
  • 数据类型,也就是表中能存放哪些类型的数据;
  • 管理表,也就是对表的创建修改和删除的操作。

认识表,我们的表都会存放在oracle数据库的表空间里。

  • 表是基本的存储单位;
  • oracle数据库中表都是二维结构;
  • 由行和列组成;行可以称之为记录,列可以成为域或者字段;

每一张表有一些约定:

  • 每一列数据必须具有相同的数据类型;
  • 列名唯一;
  • 每一行数据的唯一性。

2.oracle表中的数据类型

字符型数值型日期型其他类型。
字符型:

  • CHAR(n)、NCHAR(n),这两种都是固定长度的类型,如果10个字符你只填入2个,系统会填入8个空格进去。两者的区别,NCHAR是按照unicode格式进行存放数据的,CHAR类型n的最大值是2000,NCHAR类型n的最大值是1000,一般我们存储汉字用NCHAR类型是比较多的。
  • VARCHAR2(n)、NVARCHAR2(n),可变长度的类型。n代表最大长度。NVARCHAR其中n最大长度是2000,也是按照unicode格式存放数据,VARCHAR最大长度是4000。

数值型:

  • NUMBER(p,s) p代表有效数字,s代表小数点后的位数,s为正数表示从小数点到最低有效数字的位数,s为负数表示从最大有效数字到小数点的位数。NUMBER(5,2)表示有效数字5位,保留2位小数,比如153.23;
  • FLOAT(n)主要用于存储二进制数据,可以表示二进制的位数为1~126位,如果要将二进制数转换为十进制数要乘以0.30103,因此Oracle中一般使用NUMBER类型。

日期型:

  • DATE类型:表示范围:公元前4712年1月1日到公元9999年12年31日,可以直接精确到秒。
  • TIMESTAMP类型:更精确的日期类型TIMESTAMP(时间戳类型),能够精确到小数秒,但一般情况下我们使用DATE类型。

其它类型:大对象的数据

  • BLOB:能够存放4G的数据,存放的是以二进制形式存放的数据。
  • CLOB:能够存放4G的数据,存放的是以字符串的形式存放的。

3.管理表

这就需要我们了解如何创建表,修改表和删除表。
创建表我们分两部分为大家讲解,一部分是创建表的基本语法,然后第二部分就是实际的例子,我们会用这个语法来创建一个基本的用户信息表。
基本语法:REATE TABLE table_name (column_name datatype,...);
这里我们需要注意,在同一个用户下我们的表名要是唯一的,就是指的我们当前登陆的用户。
创建用户信息表,需要哪些字段?编号 用户名 密码 邮箱 注册时间,字段的类型。

CREATE TABLE userinfo(
id number(6,0),
username varchar2(20),
userpwd varchar2(20),
email varchar2(30),
regdate date
);

如果要查看表结构信息,可以desc userinfo直接查看的。

4.修改表

我们现在修改表是修改表的结构,并不是修改表的数据。我们会学习如何添加字段,如何更改字段的数据类型,删除字段,如何修改字段名,修改表名。
添加字段 add
alter table 表名 add 列名 数据类型;
例子:添加一个备注字段:ALTER TABLE userinfo ADD remarks varchar2(500);
修改字段类型 modify,可以更换数据类型,或者更改长度,在修改时这个表中最好是没有数据的情况下, 如果存放了很多就不能修改了。
alter table 表名 modify 列名 数据类型;
例子:ALTER TABLE userinfo MODIFY remarks varchar2(400);
例子:ALTER TABLE userinfo MODIFY userpwd number(6,0);
删除字段 drop
alter table 表名 drop column 列名;
例子:ALTER TABLE userinfo DROP COLUMN remarks;
更改字段的名字:rename
alter table 表名 rename column 列名 to 新的列名;
例子:ALTER TABLE userinfo RENAME COLUMN email to new_email;
更改表的名字:
rename 表名 to 新的表名;
rename old_table to new_table;
例子:RENAME userinfo to newuserinfo;

5.删除表

删除表:
删除表的内容,保留表结构,删除表中全部数据,但是不删除表,对表进行截断。
truncate table table_name;
例子:TRUNCATE TABLE newuserinfo;
删除表结构和表的内容
drop table table_name;
例子:DROP TABLE newuserinfo;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值