当前位置: 代码迷 >> Oracle开发 >> 表的创办与管理一(学习笔记)
  详细解决方案

表的创办与管理一(学习笔记)

热度:111   发布时间:2016-04-24 06:31:15.0
表的创建与管理一(学习笔记)

常用数据类型

  1. char(n) n=1 to2000字节,保存定长的字符串
  2. varchar2(n) n=1 to 4000字节,变长的可以入数字,字母,ASCII码字符集,12C开始最大支持32767字节长度
  3. long用来存放长文件最大2G,一个表中只能有一列是LONG
  4. number(m,n)m= 1 to 38 ,n=-84 to 127,总长度为M,小数分为N,整数部分为M-N
  5. date 日期类型,用来存放日期数据不包含毫秒
  6. timestamp ,日期类型,用来存放日期数据包含毫秒
  7. CLOB 4G容量,存放大量文本
  8. BLOB 4G容量,存放图片,电影,音乐等
  9. BFILE能够将二进制文件储存在数据库外部的操作系统文件中
  10. 整数number(m)也可以用INT替代
  11. 小数number(m,n)也可以用FLOAT替代

创建表的语法:

CREATE TABLE 用户名.表名( 字段名称 字段类型 [DEFAULT 默认值]字段名称 字段类型 [DEFAULT 默认值]……..);

 

创建表的操作属于DDL(数据库定义语言)命名要求

  1.  必须以字母开头
  2. 长度为1-30个字符
  3. 表名称由字线(A-Z,a-z),数字(0-9),_,下划线,$美元,#组成,而名称要有意义
  4. 对同一个用户不能使用相同的表名称

不能是ORACLE中的关键字如CREATE ,SELECT,UPDATE

示例一

创建一个member表,由成员编号(mid),姓名(name),年龄(age),生日(birthday),简介(note)5个字段组成

CREATE TABLE member(    mid NUMBER(5),    name VARCHAR2(50) DEFAULT '无名氏',    age NUMBER(3),    birthday  DATE   DEFAULT  SYSDATE,    note CLOB);--查看当前用户下的全部表SELECT * FROM tab;

查看member表的结构是否正确

DESC MEMBER;

向表中添加若干条记录

INSERT INTO MEMBER(mid,Name,Age,Birthday,NOTE)VALUES(1,'test1',30,to_date('1984-9-23','YYYY-MM-DD'),'bdqn1');INSERT INTO MEMBER(mid,Name,Age,Birthday,NOTE)VALUES(2,'test2',25,to_date('1990-3-22','YYYY-MM-DD'),' bdqn2');INSERT INTO MEMBER(mid,Name,Age,Birthday,NOTE)VALUES(3,'test2',31,to_date('1983-6-21','YYYY-MM-DD'),' bdqn3');
查看是否添加成功select * from member;

 

示例二

复制表

CREATE TABLE 表名称 AS 子查询

将emp表复制为myemp表CREATE TABLE myemp AS SELECT * FROM emp;查询myemp 表 select * from myemp;

示例三

要求按emp表的结构建立一张employee表,但是不需要emp表的内容,只复制表结构,最好的方法就是在查询中写一个永远不可能成功的条件where 1=2

CREATE TABLE employee AS SELECT * FROM emp WHERE 1=2;--查询employee表SELECT * FROM employee;
通过DESC employee查询表结构DESC employee;

示例四

表的重命名

 --语法

 RENAME 旧的表名称 TO 新的表名称

将member表修改为mldnuser RENAME MEMBER TO mldnuser;  --查询当前用户下的全部表 SELECT * FROM tab

示例五

截断表也叫清空表

 DELETE FROM 表名称需要时间长

 TRUNCATE TABLE 表名称  效率高 oracle专有

 --截断mldnuser表也就是清空,先是查询

--清空表 TRUNCATE TABLE mldnuser;

 

示例六

表的删除

--语法

DROP TABLE 表名称

--删除myemp表

DROP TABLE myemp;

 

  相关解决方案