Oracle创建表及管理表
转自: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创建表及管理表的更多相关文章
- Oracle创建删除用户,角色,表空间,导入导出数据库命令总结(转载)
无意间看到一篇文章,觉得对于ORACLE的新手很实用,特转载,原文出处这里 说明:在创建数据库时输入的密码,是修改系统默认的密码,以system和sysman等系统默认身份登录时要输入的密码就是修改后 ...
- orcl创建表及管理表
常用的字段数据类型: .字符串(varchar2(n)) n表示保存最大长度,基本200作用..整数(number(n)) n位的整数,也可用int代替.小数(number(n,m)) m为小数位,n ...
- 2018.5.19 Oracle数据操作和管理表的综合练习
--作业一.使用自己的用户登录,完成如下操作,并且创建5条测试数据 -- 创建学生表(stu),字段如下: -- 学号(stuID) -- 姓名(stuName) -- 性别(stuSex) -- 入 ...
- Oracle入门基础(九)一一创建表和管理表
练习:查询每一年入职人数及总人数 SQL> select count(*) Total, 2 sum(decode(to_char(hiredate,'yyyy'),'1980',1,0)) & ...
- oracle创建删除用户和表空间
创建用户:sqlplus /nologconn / as sysdba;create user username identified by passwordgreant dba to usernam ...
- oracle创建用户并指定表空间
/*第1步:创建ODPS数据表空间 */create tablespace ODPS logging datafile '/home/oracle/tablespace_dir/ODPS.dbf' s ...
- oracle创建/删除 用户,表空间-九五小庞
以下红色标示的都是可以修改的字段 可以按照如下顺序来创建表空间,创建用户,以及删除表空间,删除用户 查看oracle数据库已有的表空间路径 select name from v$datafile; 1 ...
- Oracle的学习二:表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询)
1.Oracle表的管理 表名和列名的命名规则: 必须以字母开头: 长度不能超过30个字符: 不能使用oracle的保留字: 只能使用如下字符:A-Z, a-z, 0-9, $, # 等. Oracl ...
- Hive管理表分区的创建,数据导入,分区的删除操作
Hive分区和传统数据库的分区的异同: 分区技术是处理大型数据集经常用到的方法.在Oracle中,分区表中的每个分区是一个独立的segment段对象,有多少个分区,就存在多少个相应的数据库对象.而在P ...
随机推荐
- Linux bash笔记
关于bash脚本,一般开头都加#!/bin/bash,表示以bash来作为脚本解释器:如果不加的话,就会默认当前用户登陆的shell为脚本解释器(很多情况下为sh,sh与bash不同,有可能导致脚本无 ...
- C++进阶--placement new/delete
//############################################################################ // Placement New 和 Pl ...
- P2430严酷的训练
传送 这个题的题干很长,长到令人恶心 这个题的p乍一看好像没有卵用,但其实他很有用(废话).这里的“费用”不再是tw[i](wky做第i道题的时间),而是tw[p[i]](wky做第i道题所对应的知识 ...
- 服务网关zuul之七:zuul中的动态刷新路由配置
<spring扩展点之三:Spring 的监听事件 ApplicationListener 和 ApplicationEvent 用法,在spring启动后做些事情> <服务网关zu ...
- USB-IF协会公布最新PD3.0(PPS)协议认证芯片和产品名单
原文: http://www.chongdiantou.com/wp/archives/25510.html 2017年的骁龙技术峰会高通带来了第一款兼容USB PD3.0(PPS)的QC4+充电器, ...
- [UE4]使用name slot制作带背景的容器
name slot相当于asp.net模板中的content模板. 可以往“Name Slot”里面拖放控件,如果没有“Name Slot”就不能给“BgPanel”拖放任何控件
- VMware同时使用三种网络模式的虚拟机,测试连通性
参考资料: 虚拟机中桥接不自动分配IP与设置静态IP问题: https://blog.csdn.net/u013187057/article/details/80579211 腾讯课堂: https: ...
- [SQL]SQL中EXISTS的用法
比如在Northwind数据库中有一个查询为SELECT c.CustomerId,CompanyName FROM Customers cWHERE EXISTS(SELECT OrderID FR ...
- 好习惯: 用controller as 语法和$inject数组注入
angular好习惯1: 用controller as 语法和$inject数组注入 1) 像普通的JS类一样实现controller,摆脱$scope 2) 用.$inject数组注入相关模块,便于 ...
- bootstrap4学习—Bootstrap v4.0.0-alpha.6的快速参考
下面为Bootstrap v4.0.0-alpha.6中的代码快速检索地址: 网址:https://hackerthemes.com/bootstrap-cheatsheet/ 在使用bootstra ...