• 数据库的相关操作


    1,修改表名:alter table oldname rename to newname;

    2,向表中增添一列:alter table tablename add colunmname varchar2(10);

    3,删除一张表: drop table tablename;

    4,删除一张表中的所有数据:delete * from table_name;

    5, 根据一张表的结构创建另一张相同的表:create table table_name as select * from table_name1;

    6.如果只知道一个字段,要判断这个字段属于那张表:select table_name from dba_tab_columns where column_name = '字段名';

    7.找出一张表中重复的字段:select cardnum ,count(*) from calink group by cardnum having count(*)>1;

    如表A,  编号,经度,纬度,位置,名称,时间.
    而我要查出(经度 +纬度)相同的记录来,可使用下边的语句.
    Select distinct (经度+纬度) as 统一编号,Count(*) as RecordCount
    From 表A
    Group by (经度+纬度)
    having Count(*) >1

    问题

    SYS@HMX>desc  dba_tablespaces;
    ERROR:
    ORA-04043: object dba_tablespaces does not exist

    查询发现数据库处于mount阶段

    SYS@HMX>select  status  from v$instance;


    STATUS
    ------------------------
    MOUNTED


    打开数据库

    SYS@HMX>alter database  open;


    Database altered.


    依旧显示不存在

    SYS@HMX>desc  dba_data_files;

    ERROR:
    ORA-04043: object dba_data_files does not exist


    查询其他视图存在

    SYS@HMX>desc  dba_objects;
     Name                                                                     Null?    Type
     ------------------------------------------------------------------------ -------- -------------------
     OWNER                                                                             VARCHAR2(30)
     OBJECT_NAME                                                                       VARCHAR2(128)
     SUBOBJECT_NAME                                                                    VARCHAR2(30)
     OBJECT_ID      

      DATA_OBJECT_ID                                                                    NUMBER
     OBJECT_TYPE                                                                       VARCHAR2(19)
     CREATED                                                                           DATE
     LAST_DDL_TIME                                                                     DATE
     TIMESTAMP                                                                         VARCHAR2(19)
     STATUS                                                                            VARCHAR2(7)
     TEMPORARY                                                                         VARCHAR2(1)
     GENERATED                                                                         VARCHAR2(1)
     SECONDARY                                                                         VARCHAR2(1)



    原来是在mount阶段不能查询dba_* 视图,一旦在mount阶段查询过某个视图,即使open之后在查询,还是显示不存在的,这时候就只有重启数据库了


     

  • 相关阅读:
    正则表达式大全
    函数基础(二)
    函数基础(一)
    bzoj3531 [Sdoi2014]旅行
    bzoj4785 [Zjoi2017]树状数组
    bzoj4568 [Scoi2016]幸运数字
    bzoj1975 [Sdoi2010]魔法猪学院
    bzoj1079 [SCOI2008]着色方案
    bzoj1996 [Hnoi2010]chorus 合唱队
    bzoj2326 [HNOI2011]数学作业
  • 原文地址:https://www.cnblogs.com/wzheng/p/3191740.html
Copyright © 2020-2023  润新知