精华内容
下载资源
问答
  • 今天为工程建库,弄来弄去总是报这个错误。 最后才明白:Oracle表名...使用PowerDesigner画数据库的图时,如果表名和列名全部使用大写,那么PowerDesigner自动生成的建表语句就不会使用双引号将表明、列名引起来;

    今天为工程建库,弄来弄去总是报这个错误。

    最后才明白:Oracle表名一定要全部用大写,用小写的话,PL/SQL可能不认。

    你说这事郁闷不。

    其实最郁闷的在于,这个问题不是因Oracle而起,是PowerDesigner的问题。

    在使用PowerDesigner画数据库的图时,如果表名和列名全部使用大写,那么PowerDesigner自动生成的建表语句中就不会使用双引号将表明、列名引起来;但如果名称中包含小写,那么表名或列名中就会包含""。像下面这两个例子:

    建表语句A:

    create table "t_se_Insurance_Info" (
         VIN                  VARCHAR2(30),
       VMT                  VARCHAR2(20),
       "Drive_Area"         VARCHAR2(10),
       "Is_Ecdemix"         VARCHAR2(1),
       );

    建表语句B:

    create table T_SE_CITY (
       "City_ID"            NUMBER                          not null,
       "City"               VARCHAR2(20),
       ID                   NUMBER                          not null,
       constraint PK_T_SE_CITY primary key (ID)
    );

    建表语句A中,表名实际上是t_se_Insurance_Info,但PowerDesigner自动生成的语句中建立的表是"t_se_Insurance_Info";相比表名全大写的建表语句B,这里就多了一对""。由于这对双引号的存在,在PL/SQL中使用语句“select * from t_se_Insurance_Info”就会出现“表或视图不存在”的错误,正确的语句应该是“select * from "t_se_Insurance_Info"”。

    字段名与之类似,在PL/SQL中企图检索某字段时,如果字段名全部是大写字母,直接敲字段名即可;如果是大小写混杂,那么需要用""将字段名包起来。

    这实际是PowerDesigner的问题。如果我们在将PowerDesigner生成的建表语句执行之前对它进行编辑,去掉其中多余的"",那么一切都将恢复正常。因为Oracle是大小写不敏感的。

    转自:http://hi.baidu.com/winters1224/item/953faf0d8a5a1f8a3c42e234

    采用Oracle数据库,使用Powerdesigner设计,生成Sql文件导入后查询出现“ORA-00942: 表或视图不存在 ”,很是郁闷,这个问题以前出现过,当初解决了,但因好久没有使用,这次竟然忘了,害得我浪费了好些时间,为了避免再次忘记,将它记下来,同时和大家一起分享。

    1、问题产生的原因

      Oracle 是大小写敏感的,我们创自己写Sql脚本创建表的时候Oracle会自动将我们的表名,字段名转成大写,

      eg:

    create table T_WindRadar  (
       wr_id                VARCHAR2(64)                    not null,
       wr_reciveTime        DATE,
       wr_image             BLOB,
       constraint PK_T_WINDRADAR primary key (wr_id)
    );

     

    但是 Oracle 同样支持"" 语法,将表名或字段名加上""后,Oracle不会将其转换成大写
    eg:

    create table "T_WindRadar"  (
       "wr_id"                VARCHAR2(64)                    not null,
       "wr_reciveTime"        DATE,
       "wr_image "            BLOB,
       constraint PK_T_WINDRADAR primary key (wr_id)
    );

    如果加上了"",那么我们采用一般的SQL语句查询则会产生“ORA-00942: 表或视图不存在 ”,因此SQL脚本中需要将表名也加上""。
    eg:

    select * from  "T_WindRadar";

     

    这种情况在我们手写SQL的时候一般不会发生,但是我们使用powerdesigner设计数据库的时候,由于不注意会经常出现此类问题,因为Powerdesigner生成的SQL文件默认是加""的。

    2、解决的办法

      因为我们使用的是Powerdesigner,所以可以不用手工改写SQL脚本,只要设置Powerdesigner重新生成即可。

      在PowerDesiger中,在physical data model 中找到菜单中的Database下的Edit current DBMS中,

      选择Script->Sql->Format,有一项CaseSensitivityUsingQuote,它的comment为“Determines if the case sensitivity for identifiers is managed using double quotes”,

      表示是否适用双引号来规定标识符的大小写,可以看到右边的values默认值为“YES”,改为“No”,点击【应用】按钮。

        这样再生成sql语句时,表和字段名上是没有引号了。

    转自:http://www.cnblogs.com/jtmjx/archive/2012/07/03/2574766.html

    我把引号去掉还是出现表或视图不存在的错误,后来发现有个create index生成的有问题,然后我把entity中的除了主键以外的index删除后,就没有错误提示了。

    还有一种引号按照上面无法去掉的情况,就是该列名或者表名是oracle的关键字(比如user)

    展开全文
  • 测试环境数据库有一张Comment,当我写sql语句往里面插入一条数据时,报错(忘了什么错误,好像是触发器没执行成功),查看了下触发器的sql语句,发现确实报错:表或视图不存在。 Solution 网上搜了下,得知...

    Problem

    测试环境数据库有一张Comment表,当我写sql语句往里面插入一条数据时,报错(忘了什么错误,好像是触发器没执行成功),查看了下触发器的sql语句,发现确实报错:表或视图不存在。

    Solution

    1. 网上搜了下,得知创建触发器的时候必须显式地给当前用户分配其他表的权限。假设当前用户是a,创建触发器需要查询的表或视图为table1和view1,通过pl/sql的ctrl+鼠标左键,我追踪到了表table1的拥有者为b,视图view1的拥有者为c。
    2. 随后,我用sys这个账号登陆测试环境,将b.table1的select和c.view1的select权限赋值给a。这样问题就解决了。
     grant select on b.table1 to a;
     grant select on c.view1 to a;
    
    1. 问题到此解决,读者可以不必往下看。

    New Problem

    表或视图不存在的问题解决,但是又出现了新问题:必须声明标识符。这个错误应该类似java的未定义变量错误,貌似很好解决。

    Solution

    仔细思考一下,这个表很有可能从生产直接复制过来的,于是,我就去生产查看下表的结构,追踪方法的内部实现,终于得知那个参数错误的原因是因为测试没有把生产的type(自定义类型)文件夹下的东西复制过来。

    Conclusion

    这个问题来得挺有价值的,使得我对触发器的了解更近一步。更重要的是,让我知道了生产数据库的访问方式,哪天心情不好就可以删库跑路了,哈哈哈!

    展开全文
  • 在目标库:d2,创建数据库连接: create database link my_db_link connect to u2 identified by 123456 using '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.100)(PORT=1521)))(CONNECT_...

    问题描述

    在源库 d1中,添加只读查询权限给用户u2

    GRANT SELECT ON t1 TO u2;
    

    在目标库:d2中,创建数据库连接:

    create database link my_db_link
    connect to u2 identified by 123456
    using '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.100)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=d1)))'
    ;
    

    跨库数据查询:

    select * from t1@my_db_link;
    

    以上方式在oracle11g中查询正常,但是升级到oracle19c后,部分表查询时提示错误:

    ORA-00942: 表或视图不存在
    ORA-02063: 紧接着 line (起自 my_db_link)
    

    解决办法

    在源库授权时,需添加schema,如下:

    GRANT SELECT ON u1.t1 TO u2;
    

    在目标库查询时,同样需要添加schema,如下:

    select * from u1.t1@my_db_link;
    
    展开全文
  • ORA-00942: 表或视图不存在 IMP-00023: 未安装导入视图, 请通知 DBA IMP-00000: 未成功终止导入 这是由于当初生成此dmp文件的数据库版本,与现在要导入的数据库版本一致导致的 解决办法 可以的换可以换与目标...

    IMP-00003: 遇到 ORACLE 错误 942
    ORA-00942: 表或视图不存在
    IMP-00023: 未安装导入视图, 请通知 DBA
    IMP-00000: 未成功终止导入

    这是由于当初生成此dmp文件的数据库版本,与现在要导入的数据库版本不一致导致的
    解决办法 可以的换可以换与目标数据库版本同样的dmp文件 也可以使用AlxcTool工具来修改dmp文件的版本 使其与目标数据库一致

    展开全文
  • sql2008视图插入数据发生错误

    千次阅读 2019-05-08 19:18:19
    今天用sql2008做数据库做视图相关的实验,前提是:学生(tb_student)上建立视图IS_student(Sno,Sname,Sage),视图定义加了with check option,此视图是查询出sdept为IS的学生。 要求是向视图中插入一条数据('...
  • 目录: 一、案例 二、思索过程 ...userA用户下书写存储过程如下:   create or replace procedure sp_test is v_str1 varchar2(1000); begin v_str1 := 'ALTER TABLE userB.tb_user_info_m tr
  • Java面试题大全(2020版)

    万次阅读 多人点赞 2019-11-26 11:59:06
    本套Java面试题大全,全的能再全,哈哈~ 一、Java 基础 1. JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。 JRE:Java Runtime Environ...
  • 案例四:Sql_trace进行Oracle诊断案例 问题说明:很多时候,我们进行数据库操作时,比如drop user,drop table等,经常会遇到这样的错误 ORA-00604: error occurred at recursive SQL level 1 . 这样的提示,很多...
  • 实现“imp一个.dmp文件的部分,并且,目标中不存在”的命令: 导入多 imp username/password@ORASVR fromuser=username1 touser=username file=e:\file.dmp IGNORE=Y TABLES=(table1,table2, ……)...
  • 数据库面试

    千次阅读 多人点赞 2019-02-13 09:03:42
    一、数据库问答题 1. SQL语言包括哪些类型? 数据定义DDL:Create Table,Alter Table,Drop Table, Create/Drop Index等 ...内连接是保证两个表中所有的行都要满足连接条件,而外连接则不然。 在外连接...
  • 面试 SQL整理 常见的SQL面试题:经典50题

    万次阅读 多人点赞 2019-09-12 22:16:11
    目录 ​ SQL基础知识整理: 常见的SQL面试题:经典50题 三、50道面试题 ...4.多查询 ...【面试题类型总结】这类题目属于行列如何互换...select 查询结果 如:[学号,平均成绩:组函数avg(成绩)]from 从哪张表查找数...
  • 路径规划基本介绍(一)

    万次阅读 多人点赞 2019-04-24 21:30:03
    路径规划主要是让目标对象规定范围内的区域内找到一条从起点到终点的无碰撞安全路径。路径规划有静态路径规划以及动态路径规划。这里仅针对静态路径规划方法进行简单的介绍,以下路径规划仅指静态环境下的路径...
  • Oracle入门到实战

    万次阅读 多人点赞 2019-11-09 11:12:07
    Oracle学习:Oracle基础语句、Oracle查询关键字、Oracle常用函数、Oracle常用结构
  • i if(s.indexOf(arr[i]) == -1){ //判断s数组是否存在不存在则push到s数组 s.push(arr[i]); } } console.log(s); //输出结果:["abc", "abcd", "sss", "2", "d", "t", "ss", "f", "22"] 方法二:用sort() ...
  • 测试开发笔记

    万次阅读 多人点赞 2019-11-14 17:11:58
    测试开发笔记 第一章 测试基础 7 什么是软件测试: 7 ...验收测试:(系统测试之后) 11 回归测试: 11 4.测试过程(干什么,怎么干) 12 5.各阶段输入、输出标准以及入口、出口准则:(测试阶段过程要素) 1...
  • SPSS篇—回归分析

    万次阅读 多人点赞 2019-08-20 09:29:06
    之前跟大家介绍了一款做数据分析的利器—SPSS,知道大家...上图就是本次需要进行回归分析的数据,之前有跟大家说过,SPSS Statistics的界面跟EXCEL是相似的,如果数据量比较小的时候我们可以直接输入到数据视图...
  • SpringMVC

    千次阅读 多人点赞 2018-12-26 20:51:57
     视图解析器使用SpringMVC框架默认的InternalResourceViewResolver,这个视图解析器支持JSP视图解析springmvc.xml配置文件配置如下: <!-- 配置controller扫描包 --> <!-- 注解驱动 --> <!-- 配置视图...
  • oracle 物化视图、中间的方案

    千次阅读 2019-01-13 10:46:10
    物化视图 有个项目因为有比较多的查询汇总,考虑到速度,所以使用了物化视图。简单的把用到的给整理了下。 先看简单创建语句: create materialized view mv_materialized_test refresh force on demand start ...
  • 本文结合自己实际工作经验,可能不是最好的处理办法,但也从某种程度上解决了一部分... 问题1: 开发报表时,直接从业务数据表中提取数据的效率特别低?  原因1:大量计算工作放在程序处理,没有充分利用数据库处
  • 文章目录0.前言1.思维导图2.基本更新---TABLE(1)插入数据---INSERT INTO① 插入元组② 插入子查询结果(2)修改...视图---VIEW(1)定义视图① 建立视图② 删除视图(2)查询视图(3)更新视图① 更新数据---UP...
  • 数据库管理系统

    千次阅读 2018-10-24 00:14:00
    一、数据库管理系统的基本功能 ...关系数据库就是建立数据库(模式)、视图、索引等,还有创建用户、安全保密定义(如用户口令、级别、角色、存取权限)、数据库的完整性定义。这些定义存储数据字典(亦...
  • 前言: 使用SQL语言时,要注意SQL语言对大小写并敏感,一般使用...CREATE SCHEMA可以接受CREATE TABLE,CREATE VIEW和GRANT子句,语句如下: CREATE SCHEMA <模式名> AUTHORIZATION <用户名>[<...
  • 文章目录1 视图概述、创建视图1.1 基本概念1.2 创建视图(1)表中创建视图(2)表中创建视图(3)在视图中创建新视图2 查看视图、修改视图2.1 查看视图2.2 修改视图3 视图数据更新、删除3.1 视图数据更新3.2...
  • 错误截图如下: 搜索了很多方法,但是都没有办法解决,不过最终还是找到了一个好的解决...处理方法既然知道了导致用户无法删除的原因是由于找SDO_GEOM_METADATA_TABLE所致。那处理方法便是找回之。我们...
  • 一个组件实例,只有data里初始化的数据才是响应的,Vue能检测到对象属性的添加删除,没有data里声明的属性不是响应的。 Vue允许已经创建的实例上动态添加根级响应式属性,但是可以使用$set方法将...
  • oracle中视图的使用

    千次阅读 2019-05-23 15:38:21
    数据库只存放视图的定义,而存放视图对应的数据,这些数据仍存放原来的基本表中。所以基本表中的数据发生变化,从视图中查询出的数据也就随之改变了。从这个意义上讲,视图就像一个窗口,透过它可以看到数据库...
  • WPF开发教程

    万次阅读 多人点赞 2019-07-02 23:13:20
    User32 ,您可以通过使用一个全局来实现快捷键,该表中包含您希望支持的所有快捷键(Ctrl+N 映射为“新建”)。应用程序的调度程序,您可以调用 TranslateAccelerator,它会探查 User32 的输入消息,并...
  • kettle数据抽取

    2017-07-18 10:28:17
    适合初学者学习使用kettle
  • oracle使用物化视图实现的同步

    千次阅读 2015-03-21 16:46:12
    的同步可以使用物化视图来实现,可以是同库的也可以是不同数据库之间进行数据同步,建议同库的数据同步可以使用实时的同步,如果使用db link建议使用增量的刷新方式,防止dblink导致原库的性能急剧下降。...
  • 我想“ 对象资源管理器”扩展视图的“ 列”文件夹,只是为了查看哪些列能为可为空的值,而且还因为编写SELECT语句并逐一匹配所有值更加容易。 执行完上述脚本后,我们应该返回“ 1行受影响”消息,这意味着新...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 136,613
精华内容 54,645
关键字:

在目标表或视图中不存在