转自:https://www.linuxidc.com/Linux/2018-05/152566.htm

 

1. Oracle表的创建及管理

创建表包括三个要素,表名,列名,数据类型。每个表都有对应不同的列,每个列都有唯一对应的数据类型。常用数据类型简介:

数据类型    描述
CHARACTER(n)    字符/字符串。固定长度 n。
INTEGER(p)    整数值(没有小数点)。精度 p。
NUMERIC(p,s)    精确数值,精度 p,小数点后位数 s。
VARCHAR(n)     字符/字符串。可变长度。最大长度 n。
INTEGER     整数值(没有小数点)。精度 10。存储数据的范围是-2的31次方到2   的31次方-1,占用4个字节的储存空间。
DATE    存储年、月、日的值。
TIMESTAMP    存储年、月、日、小时、分、秒的值。

相关语句

--例:创建表名为table1,列名为column1,column2,…,数据类型为特定数据类型的表

Create table table1(
Column1 datetype,
Column2 datetype,
……
);

--添加字段:在已经建好的表table1中添加字段columnX,字符类型为number
Alter table table1
add columnX number;

--修改字段数据类型:修改columnX的数据类型为date
Alter table table1
Modify columnX date;

--修改字段名:修改columnX的名称为columnY
Alter table table1
Rename column columnX to columnY;

--删除字段:删除字段columnY
Alter table table1
Drop column columnY

--修改表名:修改表table1的名称为table2
Rename table1 to table2;

--删除表:删除表table2:
Drop table table2;
2.表中的数据管理

添加数据:在表table2中添加数据

注:往表中添加数据时,字段数量与值得数量需一直并且一一按顺序匹配,添加的数据类型要符合表字段的数据类型

Insert into table2(column1,column2,……)
Values(value1,value2,……);
    添加字段默认数据:为表中某字段添加默认值,添加默认值后如果在插入一行数据时该字段没有设定插入的值,则自动填入默认值。

--第一种方法:在创建表时添加column1的默认值为0
Create table table1 (
Column1 number default 0;
Column2 datetype;
……
);

--第二种方法:创建好表后修改column的默认值为0
Create table table1 (
Column1 number;
Column2 datetype;
……
);

Alter table table1
Modify column1 default 0;
    复制表数据:将table2中的数据复制到table1中

第一种方法:建表时复制,此时新建的table1与table2表结构相同

Create table table1
As
Select * from table2
注:可加入where字句限制限定插入数据

注:如只需要复制表结构而不需要数据,则加一不成立的条件即可:

Create table table1
As
Select * from table2
Where 1=2;
第二种方法:建表后复制,复制table2中的column11,column12两列数据至table1的column1,column2两列中

Insert into table1(column1,column2)
Select column11,column12 from table2
注:可加入where字句限制限定插入数据

修改表数据:修改表table1中column1的数据为value2

Update table1

Set column1=value2;
注:可加入where字句限制限定修改数据

删除数据:

第一种方法:有条件删除

Delete from table1

Where ……;
第二种方法:全部删除,删除table1中所有数据(不可回滚)

Truncate table table1

Oracle创建表及管理表的更多相关文章

  1. Oracle创建删除用户,角色,表空间,导入导出数据库命令总结(转载)

    无意间看到一篇文章,觉得对于ORACLE的新手很实用,特转载,原文出处这里 说明:在创建数据库时输入的密码,是修改系统默认的密码,以system和sysman等系统默认身份登录时要输入的密码就是修改后 ...

  2. orcl创建表及管理表

    常用的字段数据类型: .字符串(varchar2(n)) n表示保存最大长度,基本200作用..整数(number(n)) n位的整数,也可用int代替.小数(number(n,m)) m为小数位,n ...

  3. 2018.5.19 Oracle数据操作和管理表的综合练习

    --作业一.使用自己的用户登录,完成如下操作,并且创建5条测试数据 -- 创建学生表(stu),字段如下: -- 学号(stuID) -- 姓名(stuName) -- 性别(stuSex) -- 入 ...

  4. Oracle入门基础(九)一一创建表和管理表

    练习:查询每一年入职人数及总人数 SQL> select count(*) Total, 2 sum(decode(to_char(hiredate,'yyyy'),'1980',1,0)) & ...

  5. oracle创建删除用户和表空间

    创建用户:sqlplus /nologconn / as sysdba;create user username identified by passwordgreant dba to usernam ...

  6. oracle创建用户并指定表空间

    /*第1步:创建ODPS数据表空间 */create tablespace ODPS logging datafile '/home/oracle/tablespace_dir/ODPS.dbf' s ...

  7. oracle创建/删除 用户,表空间-九五小庞

    以下红色标示的都是可以修改的字段 可以按照如下顺序来创建表空间,创建用户,以及删除表空间,删除用户 查看oracle数据库已有的表空间路径 select name from v$datafile; 1 ...

  8. Oracle的学习二:表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询)

    1.Oracle表的管理 表名和列名的命名规则: 必须以字母开头: 长度不能超过30个字符: 不能使用oracle的保留字: 只能使用如下字符:A-Z, a-z, 0-9, $, # 等. Oracl ...

  9. Hive管理表分区的创建,数据导入,分区的删除操作

    Hive分区和传统数据库的分区的异同: 分区技术是处理大型数据集经常用到的方法.在Oracle中,分区表中的每个分区是一个独立的segment段对象,有多少个分区,就存在多少个相应的数据库对象.而在P ...

随机推荐

  1. webscoket通信初步(一)

    只要动手做起来,多投入时间和精力.耐心去研究,以大多人的智商加google,平时遇到的大部分问题我们都是可以自己解决的,大部分的知识我们都是可以掌握的. 我们都知道http协议是单向请求的,无法实现双 ...

  2. vc++使用cookie登录网站

    以http://www.idc816.com为例 效果图: 1)先登录获取cookie,再使用cookie获取用户信息 2)记录cookie,关闭程序后重新运行程序,直接获取用户信息 使用Fiddle ...

  3. PAT 乙级 1079 延迟的回文数(20 分)

    1079 延迟的回文数(20 分) 给定一个 k+1 位的正整数 N,写成 a​k​​⋯a​1​​a​0​​ 的形式,其中对所有 i 有 0≤a​i​​<10 且 a​k​​>0.N 被称 ...

  4. 学习笔记之HTML 教程 | 菜鸟教程

    HTML 教程 | 菜鸟教程 http://www.runoob.com/html/html-tutorial.html 菜鸟教程在线编辑器 http://www.runoob.com/try/try ...

  5. div+css命名大全

    头:header  内容:content/container  尾:footer  导航:nav  侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper  左右中:lef ...

  6. 关于string.Template的简单介绍

    一.简介 string模块定义了一种新字符串类型Template,它简化了特定的字符串置换操作. 何谓“简化”?我们可以先想一下我们之前比较常用的有关字符串的“置换”操作有哪些:一种是利用%操作符实现 ...

  7. set函数&操作

    集合的交叉并补 交集, 共同的部分 set1 & set2 set1.intersection(set2) 差集 set1有set2没有的元素 set1 - set2 set1.differe ...

  8. 使用命名管道的OVERLAPPED方式实现非阻塞模式编程 .

    命令管道是进程间通讯的一种常用方式,对于命令管道的介绍可以参考别的资料和书籍,这里推荐一个<VC++下命名管道编程的原理及实现>这篇博文,写得比较清楚.但是都是介绍了阻塞模式的编程,我这里 ...

  9. gulp 编译es6 react 教程 案例 配置

    1.gulp基本配置: var gulp = require('gulp'), watch = require('gulp-watch'), babel = require('gulp-babel') ...

  10. Matplotlib模块

    不求甚解,不断学习不断添加... 2017.10.26 1.绘制简单的图像 # 第一步创建显示画面,figure('show')指定图表名称 plt.figure('data') #绘制图像--> ...