请教各位,我在创建视图的时候报错。(以前运行这句代码都没错误的)create or replace view svf_nat_a as
select t.o_name_cn,o_py,o_name_py o_cut_py,pinyin_to_flp(o_name_py) flp
from svf_nat_0 t
where o_name_cn<>o_py ;提示错误:ora-00904 " pinyin_to_flp" :invalid identifier;该怎么解决?谢谢!
select t.o_name_cn,o_py,o_name_py o_cut_py,pinyin_to_flp(o_name_py) flp
from svf_nat_0 t
where o_name_cn<>o_py ;提示错误:ora-00904 " pinyin_to_flp" :invalid identifier;该怎么解决?谢谢!
解决方案 »
- Oracle遍历当前用户下的所有表,并从通过dblink从另一个用户下同名的表中获取数据插入
- dts导出数据到oracle,怎么批量将表名小写字母改成大写?
- Pl/sql问题 急
- 问个简单问题 帮帮忙 多用户怎么向一个表里插值啊
- 通过最简单的sql语句实现如下功能?HELP
- 紧急求助! 如何定义二维数组
- 关于Oracle在线用户的问题(在线等)
- 关于ORACLE73在WIN2000上安装的问题,高手请进,高分相送。
- 在Oracle中有没有像mssqlserver中的@@ROWCOUNT这样的东东?
- 判断一个java.sql.Date类型的数据和数据库中的date型字段在同一天,在SQL语句中怎样写?
- oracle 提示:ora-12542,地址被占用
- 数据备份
提示错误: " pinyin_to_flp" 这个标示符 不可用。 有这个函数吗?
-- 1。如果没有一条记录返回,那你就没有权限访问这个函数或者这个函数在某一个PACKAGE里面
-- 2。如果有记录返回,那就说明函数在你的“眼皮”下,那用的时候最好加上OWNER前缀,如果还不行,那可能就没有EXECUTE权限罗
e.g: SQL> SELECT OWNER,
2 OBJECT_NAME,
3 SUBOBJECT_NAME,
4 OBJECT_TYPE
5 FROM ALL_OBJECTS
6 WHERE OBJECT_TYPE = UPPER('FUNCTION')
7 AND OBJECT_NAME = UPPER('GET_CLOB_FROM_XML');OWNER OBJECT_NAME SUBOBJECT_NAME OBJECT_TYPE
------------------------------ ------------------------------ ------------------------------ -------------------
SCOTT GET_CLOB_FROM_XML FUNCTION
这个权限指的是数据库用户的权限吗,如果是那用该不是这个问题,因为我用相同的脚本创建了其他的用户,却可以使用该函数。
如果是需要加owner 那为什么其他的用户创建的时候后不需要加owner 前缀 呢?问题产生的原因我查了一下,会不会因为我创建了一个 W08_Reship 的数据库用户。后来因为其他原因我先删除了该用户,使用的级联删除。而后我创建了相同名字的W08_Reship用户。在新创建的这个用户下,该函数就不能使用了。我曾经尝试重启了系统和数据库,都不能解决该问题,那也证明应该不会是个用户共享的缓冲池混乱了。那真正的原因是什么呢?谢谢!
在访问时加上建立账号名user.object形式,即7楼所说
这是由于不同用户模式(schema)访问造成的...