zoukankan      html  css  js  c++  java
  • 创建表时 ORA-00955: 名称已由现有对象使用

    转自:https://www.cnblogs.com/zjfjava/p/9070795.html

    如下,在执行创建表语句时报错如下:

    执行下面sql查询

    select a.OBJECT_type,a.* from all_objects a where upper(a.OBJECT_NAME) ='USER_SF_INFO';

    发现有一个视图和该表重名了,解决方法是修改名称,或删掉重复的对象

    附:如果查询对象时没有找到,则在dba账户下执行下面的语句刷新一下共享池(未进行到此步,无法验证准确性)

    alter system flush shared_pool;

    共享池:

    oracle会将用户提交来的SQL语句都缓存在内存中。每次处理新的一条SQL语句时都会先在内存中查看是否有相同的SQL语句,如果相同则可以减少最重要的解析工作(也就是生成执行计划),从而节省了大量的资源;反之如果没有找到相同的SQL语句,则必须重新从头到尾进行完整的解析过程,这部分存放SQL语句的内存就叫做共享池( shared pool)。当然shared pool里不仅仅是SQL语句,还包括管理shared pool的内存结构以及执行计划、控制信息等等。

  • 相关阅读:
    scrapy模拟用户登录
    我为什么选择Vim
    关于72键配列键盘的想法
    vim配图
    解决一些python的问题记录
    ros资料记录,详细阅读
    C语言的历史
    将制定目录家到系统PATH环境变量中
    让vim更加智能化
    如何自定义路径
  • 原文地址:https://www.cnblogs.com/sharpest/p/11096457.html
Copyright © 2011-2022 走看看