Oracle数据库总结:

Oracle数据库之集合运算
Oracle数据库之数据处理
Oracle数据库之建表和管理表
Oracle数据库之对象视图、索引、序列、同义词

建表语法:

create table tablename
(columnname datatype,
..............)
[with option]
[as sql语句];

SQL> create table test3
2 (tid number,
3 tname varchar2(20),
4 hiredate date default sysdate);

表已创建。

SQL> insert into test3(tid,tname) values(1,‘sihai’);

已创建 1 行。

SQL> select * from test3;

       TID TNAME                HIREDATE
---------- -------------------- --------------                                  1 sihai                  11-3月 -15                                      已选择 1 行。

SQL> --rowid 行地址 伪列

SQL> select rowid,empno,ename,sal
2 from emp;

ROWID                   EMPNO ENAME             SAL
------------------ ---------- ---------- ----------
AAAMfPAAEAAAAAgAAA       7369 SMITH             800
AAAMfPAAEAAAAAgAAB       7499 ALLEN            1600
AAAMfPAAEAAAAAgAAC       7521 WARD             1250
AAAMfPAAEAAAAAgAAD       7566 JONES            2975
AAAMfPAAEAAAAAgAAE       7654 MARTIN           1250
AAAMfPAAEAAAAAgAAF       7698 BLAKE            2850
AAAMfPAAEAAAAAgAAG       7782 CLARK            2450
AAAMfPAAEAAAAAgAAH       7788 SCOTT            3000
AAAMfPAAEAAAAAgAAI       7839 KING             5000
AAAMfPAAEAAAAAgAAJ       7844 TURNER           1500
AAAMfPAAEAAAAAgAAK       7876 ADAMS            1100                             ROWID                   EMPNO ENAME             SAL
------------------ ---------- ---------- ----------
AAAMfPAAEAAAAAgAAL       7900 JAMES             950
AAAMfPAAEAAAAAgAAM       7902 FORD             3000
AAAMfPAAEAAAAAgAAN       7934 MILLER           1300                             已选择 14 行。

SQL> --创建表,保存20号部门的员工

1 create table emp20
2 as
3* select * from emp where deptno=20
SQL> /

表已创建。

SQL> select * from emp20;

   EMPNO ENAME      JOB              MGR HIREDATE              SAL       COMM
---------- ---------- --------- ---------- -------------- ---------- ---------- DEPTNO
----------                                                                      7369 SMITH      CLERK           7902 17-12月-80            800            20                                                                      7566 JONES      MANAGER         7839 02-4月 -81           2975            20                                                                      7788 SCOTT      ANALYST         7566 19-4月 -87           3000            20                                                                      EMPNO ENAME      JOB              MGR HIREDATE              SAL       COMM
---------- ---------- --------- ---------- -------------- ---------- ---------- DEPTNO
----------                                                                      7876 ADAMS      CLERK           7788 23-5月 -87           1100            20                                                                      7902 FORD       ANALYST         7566 03-12月-81           3000            20                                                                      已选择 5 行。

SQL> --创建表:员工号 姓名 月薪 年薪 部门名称
SQL> create table empinfo
2 as
3 select e.empno,e.ename,e.sal,e.sal*12 annsal,d.dname
4 from emp e,dept d
5 where e.deptno=d.deptno;

表已创建。

SQL> select * from empinfo;

     EMPNO ENAME             SAL     ANNSAL DNAME
---------- ---------- ---------- ---------- --------------                      7369 SMITH             800       9600 RESEARCH                            7499 ALLEN            1600      19200 SALES                               7521 WARD             1250      15000 SALES                               7566 JONES            2975      35700 RESEARCH                            7654 MARTIN           1250      15000 SALES                               7698 BLAKE            2850      34200 SALES                               7782 CLARK            2450      29400 ACCOUNTING                          7788 SCOTT            3000      36000 RESEARCH                            7839 KING             5000      60000 ACCOUNTING                          7844 TURNER           1500      18000 SALES                               7876 ADAMS            1100      13200 RESEARCH                            EMPNO ENAME             SAL     ANNSAL DNAME
---------- ---------- ---------- ---------- --------------                      7900 JAMES             950      11400 SALES                               7902 FORD             3000      36000 RESEARCH                            7934 MILLER           1300      15600 ACCOUNTING                          已选择 14 行。

修改表语法;(tablename:表名称;datatype:数据类型;columnname:列名)

添加列:alter table tablename add columnname datatype;
修改列:alter table tablename modify columnname datatype;
删除列:alter table tablename drop column columnname;

SQL> – 修改表:追加新列 修改列 删除列 重命名列 重命名表
SQL> desc test3

 名称                                      是否为空? 类型----------------------------------------- -------- ----------------------------TID                                                NUMBERTNAME                                              VARCHAR2(20)HIREDATE                                           DATE

SQL> alter table test3 add photo blob;

表已更改。

SQL> desc sihai10

 名称                                      是否为空? 类型----------------------------------------- -------- ----------------------------TID                                                NUMBERTNAME                                              VARCHAR2(20)HIREDATE                                           DATEPHOTO                                              BLOB

SQL> alter table test3 modify tname varchar2(40);

表已更改。

SQL> desc test3

 名称                                      是否为空? 类型----------------------------------------- -------- ----------------------------TID                                                NUMBERTNAME                                              VARCHAR2(40)HIREDATE                                           DATEPHOTO                                              BLOB

SQL> alter table test3 drop column photo;

表已更改。

SQL> alter table test3 rename column tname to username;

表已更改。

SQL> rename test3 to test4;

表已重命名。

SQL> host cls

SQL> --删除表
SQL> select * from tab;

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
DEPT                           TABLE
EMP                            TABLE
BONUS                          TABLE
SALGRADE                       TABLE
TEST2                          TABLE
TEST1                          TABLE
EMP10                          TABLE
TESTSAVEPOINT                  TABLE
TESTDELETE                     TABLE
EMP20                          TABLE
EMPINFO                        TABLE                                            TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
TEST4                          TABLE                                            已选择 12 行。

SQL> drop table test4;

表已删除。

SQL> select * from tab;

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
DEPT                           TABLE
EMP                            TABLE
BONUS                          TABLE
SALGRADE                       TABLE
TEST2                          TABLE
TEST1                          TABLE
EMP10                          TABLE
TESTSAVEPOINT                  TABLE
TESTDELETE                     TABLE
BIN$614V+lSURJGA1iC0nwlKKg==$0 TABLE
EMP20                          TABLE                                            TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
EMPINFO                        TABLE                                            已选择 12 行。

SQL> --Oracle的回收站

SQL> --才查看回收站
SQL> show recyclebin;

ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------
TEST4            BIN$614V+lSURJGA1iC0nwlKKg==$0 TABLE        2015-03-11:16:05:22

SQL> --清空回收站
SQL> purge recyclebin;

回收站已清空。

SQL> select * from TESTSAVEPOINT;

      TID TNAME
---------- --------------------                                                 1 sihai                                                                  2 Mary                                                                 已选择 2 行。

SQL> drop table TESTSAVEPOINT;

表已删除。

SQL> show recyclebin;

ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------
TESTSAVEPOINT    BIN$IC4h7QX9Sv2aRY11zR9/hg==$0 TABLE        2015-03-11:16:08:27

SQL> select * from TESTSAVEPOINT;
select * from TESTSAVEPOINT
*
第 1 行出现错误:
ORA-00942: 表或视图不存在

SQL> select * from BIN$IC4h7QX9Sv2aRY11zR9/hg==0;select∗fromBIN0; select * from BIN0;select∗fromBINIC4h7QX9Sv2aRY11zR9/hg==$0
*
第 1 行出现错误:
ORA-00933: SQL 命令未正确结束

SQL> select * from “BIN$IC4h7QX9Sv2aRY11zR9/hg==$0”;

     TID TNAME
---------- --------------------                                                 1 sihai                                                                  2 Mary                                                                 已选择 2 行。

约束:

primary key:主键
foreign key:外键
unique:唯一
not null:不为空
check

SQL> create table test5
2 (tid number,
3 tname varchar2(20),
4 gender varchar2(2) check (gender in (‘男’,‘女’)),
5 sal number check (sal > 0)
6 );

表已创建。

SQL> insert into test5 values(1,‘sihai’,‘男’,1000);

已创建 1 行。

SQL> insert into test5 values(2,‘Mike’,‘啊’,1000);
insert into test5 values(2,‘Mike’,‘啊’,1000)
*
第 1 行出现错误:
ORA-02290: 违反检查约束条件 (SCOTT.SYS_C005393)

SQL> create table student
2 (
3 sid number constraint student_pk primary key,
4 sname varchar2(20) constraint student_name_notnull not null,
5 gender varchar2(2) constraint student_gender check (gender in (‘男’,‘女’)),
6 email varchar2(40) constraint student_email_unique unique
7 constraint student_email_notnull not null,
8 deptno number constraint student_fk references dept(deptno) on delete set null
9 );

表已创建。

SQL> insert into student values(1,‘sihai’,‘男’,‘sihai@126.com’,10);

已创建 1 行。

SQL> insert into student values(2,‘Mike’,‘男’,‘sihai@126.com’,10);
insert into student values(2,‘Mike’,‘男’,‘sihai@126.com’,10)
*
第 1 行出现错误:
ORA-00001: 违反唯一约束条件 (SCOTT.STUDENT_EMAIL_UNIQUE)

Oracle数据库之创建和管理表相关推荐

  1. ORACLE开发:创建与管理表空间和数据文件1

    Oracle在逻辑上以表空间存储数据,而实际上是以数据文件存储数据. 表空间和数据文件 表空间:某一时刻只属于一个数据库:由一个或多个数据文件组成:可近一步划分逻辑存储单元 数据文件:只能属于一个表空 ...

  2. 创建emp表 oracle,Oracle中创建和管理表详解

    Oracle中创建和管理表详解 更新时间:2013年08月01日 15:44:16   作者: 以下是对Oracle中的创建和管理表进行了详细的分析介绍,需要的朋友可以过来参考下 SQL> /* ...

  3. oracle 序列和表关联,Oracle 创建和管理表、集群和序列

    创建表 1.describe 表名  --查看表结构 定义列的时候变长字符数据类型必须指定最大长度,number可以是最高精度(最高到38位),也可以是指定的精度. 2.字符宽度和数值精度 char列 ...

  4. Oracle数据库批量创建表空间

    我们在项目中可能会发生这样一种情况,需要将某一个外库导出来的dmp文件恢复到自己的库中,便于查看数据,这时候就有可能会出现需要建立多表空间的情况.这里有两种可能,一种是已知表空间名的情况,另一种就是连 ...

  5. Oracle数据库物理存储结构管理

    1.实验目的 (1)掌握Oracle数据库数据文件的管理. (2)掌握Oracle数据库控制文件的管理. (3)掌握Oracle数据库重做日志文件的管理. (4)掌握Oracle数据库归档管理. 2. ...

  6. oracle实验报告2:: Oracle数据库物理存储结构管理(含实验小结)

    目录 实验目的 实验设备及器材 实验内容 实验步骤 实验过程 实验小结 实验目的 1.熟悉Oracle数据库物理存储结构: 2.掌握Oracle数据库数据文件的管理: 3.掌握Oracle数据库控制文 ...

  7. 【T-SQL】一、数据库的创建与管理

    一.数据库的创建与管理 文章目录 一.数据库的创建与管理 (一)创建数据库 完整语法格式 选项说明与设置 例题:图书馆管理数据库 例题:学生管理数据库 (二)查看数据库 数据库基本信息 查看数据库信息 ...

  8. oracle 将包赋权给用户,oracle数据库如何创建用户和角色,并给其赋权?

    一.创建用户并赋予权限 1.创建用户 create user wangxiangyu identified by wangxiangyu; 2.赋权 grant dba to wangxiangyu; ...

  9. linux oracle 用户创建,LINUX下Oracle数据库用户创建方法详解

    本文实例分析了LINUX下Oracle数据库用户创建方法.分享给大家供大家参考,具体如下: 1)登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切 ...

最新文章

  1. Mysql学习总结(11)——MySql存储过程与函数
  2. LeetCode--055--跳跃游戏(java)
  3. CV之Hog+HamMingDistance:基于Hog提取和汉明距离对比的应用—图像相似度对比之for循环将多个成对图片依次对比并输出相似度
  4. 【图像分割模型】全局特征与局部特征的交响曲—ParseNet
  5. Servlet底层原理、Servlet实现方式、Servlet生命周期
  6. 说说如何用JavaScript实现一个模板引擎
  7. Mysql 启动失败没日志,MySQL Server 5.7将无法启动,并且未填充错误日志
  8. 如何使用php写爬虫,PHP如何开发简单爬虫
  9. 什么是网络计算机有什么优点,ISDN是什么?它有什么优点?
  10. java: 程序包org.springframework.boot不存在
  11. pgRouting参考资料
  12. 热烈祝贺电脑升级到64G内存了
  13. 年轻导演的创业之路-杨立坤
  14. 怎样手工清除autorun病毒
  15. CVPR 2022 | 看谷歌的单张图片人体重建效果如何?
  16. cx oracle 连接编码,python用cx_Oracle连接oracle编码问题解决办法
  17. 2022-ACS-Boosting Protein−Ligand Binding Pose Prediction and Virtual Screening Based on Residue−Atom
  18. 浙大oj(basic level)1001
  19. python读xml文件生成.h头文件_PYTHON读写xml文件的方法
  20. rsa加解密(兼容微信小程序环境)

热门文章

  1. Linux SPI总线和设备驱动架构之四:SPI数据传输的队列化
  2. 可视化篇(四)——— python绘制双y轴、箱线图、概率分布三种图形及案例
  3. MATLAB之GUI学习经典举例
  4. 为预防软件质缺陷应该做点儿什么
  5. crypto-RSA
  6. 76. 最小覆盖子串(滑动窗口)
  7. Beyond Compare4长期使用方法
  8. 13-Introduction to security
  9. Testing and Test-First Programming
  10. 【网络安全】一次授权的渗透测试