Oracle中的表操作-创建、修改,增减列

简介:
在oracle中,表是很重要的,我们在工作中经常要对表进行一些操作,如创建,复制,查询,修改,增减列,截断表,改表名,加注释,删除等,下面我将这些常用的表操作作一个简单的归纳。
我以oracle中的scott用户为例。
1.创建表
SQL> create table t3(id number,name char(15),age date);
Table created.
SQL> insert into t3 values(1,'aa',to_date('1984-01-01','yyyy-mm-dd'));
1 row created.
SQL> select * from t3;
        ID NAME            AGE
---------- --------------- ---------
         1 aa              01-JAN-84
SQL> select to_char(age,'yyyy-mm-dd') from t3;
TO_CHAR(AGE)
----------
1984-01-01
2.查看表字段
SQL> desc t3
 Name                    Null?    Type
 ----------------------- -------- ----------------
 ID                               NUMBER
 NAME                             CHAR(15)
 AGE                              DATE
3.复制表(包括表中的数据)
SQL> create table t31 as select * from t3;
Table created.
SQL> desc t31
 Name                    Null?    Type
 ----------------------- -------- ----------------
 ID                               NUMBER
 NAME                             CHAR(15)
 AGE                              DATE
SQL> select * from t31;
        ID NAME            AGE
---------- --------------- ---------
         1 aa              01-JAN-84

4.复制表(不包括表中的数据)
SQL> create table t32 as select * from t3 where 1=0;
Table created.
SQL> desc t32;
 Name                    Null?    Type
 ----------------------- -------- ----------------
 ID                               NUMBER
 NAME                             CHAR(15)
 AGE                              DATE
SQL> select * from t32;
no rows selected
5.查看scott用户拥有哪些表
查看视图user_tables即可。
SQL> select table_name from user_tables;
TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE
CESHI
TT
T2
T31
T3
T32
6.查看表是用什么语句创建的
SQL> select dbms_metadata.get_ddl('TABLE','T32') FROM DUAL;
DBMS_METADATA.GET_DDL('TABLE','T32')
--------------------------------------------------
  CREATE TABLE "SCOTT"."T32"
   (    "ID" NUMBER,
        "NAME" CHAR(15),
        "AGE" DATE
7.查看用户的对象
SQL> select distinct object_type from user_objects;
OBJECT_TYPE
-------------------
SEQUENCE
TABLE
INDEX
好了,上面的语句可以查看表的一些信息,下面对表进行相关的操作(t3为例,上面以创建好)
8.增加列(为表增加一个address字段)
S QL> alter table t3 add(address varchar2(20));
Table altered.
SQL> desc t3;
 Name                    Null?    Type
 ----------------------- -------- ----------------
 ID                               NUMBER
 NAME                             CHAR(15)
 AGE                              DATE
 ADDRESS                          VARCHAR2(20)
插入数据
SQL> insert into t3 values(2,'bb',to_date('1985-01-01','yyyy-mm-dd'),'BEIJING');
1 row created.
SQL> select * from t3;
        ID NAME            AGE       ADDRESS
---------- --------------- --------- -------------
         1 aa              01-JAN-84
         2 bb              01-JAN-85 BEIJING
9.修改列定义
SQL> alter table t3 modify(address char(15));
Table altered.
SQL> desc t3
 Name                    Null?    Type
 ----------------------- -------- ----------------
 ID                               NUMBER
 NAME                             CHAR(15)
 AGE                              DATE
 ADDRESS                          CHAR(15)

10.修改列名
SQL> alter table t3 rename column address to address1;
Table altered.
SQL> desc t3
 Name                    Null?    Type
 ----------------------- -------- ----------------
 ID                               NUMBER
 NAME                             CHAR(15)
 AGE                              DATE
 ADDRESS1                         CHAR(15)
11.加注释
SQL> comment on table t3 is 'biao t3';
Comment created.
SQL> SELECT COMMENTS FROM USER_TAB_COMMENTS WHERE TABLE_NAME='T3';
COMMENTS
--------------------------------------------------
biao t3
12.改表名
SQL> alter table t3 rename to t4;
Table altered.
SQL> select * from t4;
        ID NAME            AGE       ADDRESS1
---------- --------------- --------- -------------
         1 aa              01-JAN-84
         2 bb              01-JAN-85 BEIJING
13.截断表(truncate)
SQL> truncate table t4;
Table truncated.
SQL> select * from t4; 
no rows selected
14.删除表
SQL> drop table t4; 
Table dropped.
SQL> desc t4
ERROR:
ORA-04043: object t4 does not exist

表的大部分操作就写到这里,作为oracle管理的新手,这些都是必须的,必须牢记。


本文转自 zhangzj1030 51CTO博客,原文链接:http://blog.51cto.com/tech110/174550

相关文章
|
8月前
|
Oracle 关系型数据库 Java
实时计算 Flink版操作报错之读取Oracle数据库时遇到找不到驱动,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
实时计算 Flink版操作报错之读取Oracle数据库时遇到找不到驱动,是什么原因
|
8月前
|
Oracle 关系型数据库 MySQL
实时计算 Flink版操作报错之遇到报错 Oracle 19C,如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
8月前
|
Oracle 关系型数据库 MySQL
实时计算 Flink版操作报错合集之采集oracle的时候报ORA-65040:不允许从可插入数据库内部执行该操作如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
336 3
|
8月前
|
消息中间件 关系型数据库 Kafka
实时计算 Flink版产品使用合集之oracle cdc 抽取新增一张表 可以从savepoint恢复吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
6月前
|
Oracle 关系型数据库 数据库
|
6月前
|
分布式计算 Oracle 大数据
MaxCompute产品使用合集之没有数据源,只是将批量状态和时间写入Oracle表里,该如何操作
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
7月前
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用问题之oracle无主键的表支持同步吗如何实现
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
7月前
|
运维 DataWorks Oracle
DataWorks产品使用合集之在标准模式下,当同步Oracle的表或视图时,是否需要在源端的测试和生产环境中都存在要同步的表或视图
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
63 3
|
7月前
|
SQL DataWorks Oracle
DataWorks产品使用合集之datax解析oracle增量log日志该如何操作
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
74 0
|
8月前
|
Oracle 关系型数据库 MySQL
实时计算 Flink版操作报错合集之写Oracle时出现的缺失等号错误如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
103 9

推荐镜像

更多