• ORA00942: 表或试图不存在


    郁闷:powerdesigner 生成oracle的建表脚本,但是对生成的表不能进行 insert、exp、update、drop 报ORA-00942: 表或试图不存在 异常,本以为动了oracle哪里的配置导致的,在网上找了很多帖子——未果!百般无奈下删除了用户 ……drop user lizhiyu cascade;

        不妥:用powerdesigner 生成的oracle的建表脚本重新建库,结果还是一样。只能仔细看下表结构,建表语句如下:

            -- Create table
    create table s
    (
      "sid"      NUMBER not null,
      "sname"    VARCHAR2(20),
      SEX      VARCHAR2(2),
      "birthday" DATE
    )
    tablespace SYSTEM
      pctfree 10
      pctused 40
      initrans 1
      maxtrans 255
      storage
      (
        initial 64
        minextents 1
        maxextents unlimited
      );

    熟悉点数据库的同志们就会发现问题,打开powerdesigner生成的脚本内容如下:

    create table "s"  (
       "sid"                NUMBER                          not null,
       "sname"              VARCHAR2(20),
       "sex"                VARCHAR2(2),
       "birthday"           DATE,
       constraint PK_S primary key ("sid")
    );

    所有的表名和列明如果是小写字母的加上了双引号

     虽然数据库的表名和字段名不区分大小写但是有双引号和没有双引号就是两回事儿了。双引号怎么来的?powerdesigner里设计字段名时候以小写字母命名 导出sql脚本是会在小写字母上加双引号!!!导致oracle建表成功但是操作不了!

        琢磨:既然能建立就一定能操作啊,索性,试了下 drop table “S” ,恩 果然好使,去掉ddl语句中的所有双引号,问题解决。

        具体解决办法,操作可在本人博客另一篇文章http://www.cnblogs.com/chinafine/articles/1847010.html中找到答案。

  • 相关阅读:
    Django中的syncdb命令
    notepad++下的字体设置
    python中的getattr函数
    python实现虚拟茶话会
    利用python爬取海量疾病名称百度搜索词条目数的爬虫实现
    SQL里面如何取得前N条数据?
    python中怎么查看当前工作目录和更改工作目录
    python中thread模块中join函数
    python中的自测语句是什么?
    python读取数据库数据有乱码怎么解决?
  • 原文地址:https://www.cnblogs.com/aaa6818162/p/2258313.html
Copyright © 2020-2023  润新知