社区
Oracle
帖子详情
CREATE OR REPLACE DIRECTORY出错
F15Eagle
2007-03-12 04:02:44
PLUS中运行CREATE OR REPLACE DIRECTORY SHENHUA.IMAGES AS 'C:\Inetpub\wwwroot';
出现如下提示:
CREATE OR REPLACE DIRECTORY SHENHUA.IMAGES AS 'C:\Inetpub\wwwroot'
*
ERROR 位于第 1 行:
ORA-00905: 缺少关键字
各位同人多多指教啊
...全文
899
13
打赏
收藏
CREATE OR REPLACE DIRECTORY出错
PLUS中运行CREATE OR REPLACE DIRECTORY SHENHUA.IMAGES AS 'C:\Inetpub\wwwroot'; 出现如下提示: CREATE OR REPLACE DIRECTORY SHENHUA.IMAGES AS 'C:\Inetpub\wwwroot' * ERROR 位于第 1 行: ORA-00905: 缺少关键字 各位同人多多指教啊
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
F15Eagle
2007-03-14
打赏
举报
回复
楼主 回 各位朋友:
我想实现的功能是通过过程将.gif文件存储到ORACLE表中,参考CSDN中某帖中给出的解决办法,写了如下命令:
--创建表AAA
CREATE OR REPLACE TABLE SHENHUA.AAA (
T_ID VARCHAR2 (5) NOT NULL,
T_IMAGE BLOB NOT NULL
);
--创建存储过程AAAA
CREATE OR REPLACE PROCEDURE SHENHUA.AAAA (
TID VARCHAR2,
FILENAME VARCHAR2) AS
F_LOB BFILE;
B_LOB BLOB;
BEGIN
INSERT INTO AAA (T_ID, T_IMAGE) VALUES (TID,
EMPTY_BLOB ()) RETURN T_IMAGE INTO B_LOB;
F_LOB:= BFILENAME ('AAAAA', FILENAME);******
DBMS_LOB.FILEOPEN (F_LOB, DBMS_LOB.FILE_READONLY);
DBMS_LOB.LOADFROMFILE (B_LOB, F_LOB,
DBMS_LOB.GETLENGTH (F_LOB));
DBMS_LOB.FILECLOSE (F_LOB);
COMMIT;
END;
标有******的那一行中,AAAAA是一个DIRECTORY,但通过以下命令
CREATE OR REPLACE DIRECTORY AAAAA AS 'C:\Inetpub\wwwroot';
会将AAAAA创建在SYS方案下,这样我在SHENHUA方案中创建的过程AAAA就不能使用这个DIRECTORY了。
如果能使用别的方法代替标有******的那一行就好了,也就是说我在过程AAAA中能不能不用DIRECTORY,而采用别的方法?请指教
F15Eagle
2007-03-14
打赏
举报
回复
楼主 回 lauweiaaa(听我的,没错):
如果我在SHENHUA方案下的一个存储过程需要使用DIRECTORY,具体该如何实现!也就是说如何通过 Grant 来实现对Directory的访问?能给个简单的示例吗?
感谢大家的帮助
lauweiaaa
2007-03-14
打赏
举报
回复
创建Directory不可以指定方案
所有的Directory都被创建在同一个命名空间内
Directory的访问控制通过 Grant 来实现 -- 这是你要这样做的原因吧
F15Eagle
2007-03-14
打赏
举报
回复
楼主 回 wiler(@_@):
提示是:目录已创建
但是IMAGES被创建在SYS方案下,而我想把IMAGES创建在SHENHUA方案下
lauweiaaa
2007-03-14
打赏
举报
回复
SQL> show user
USER 为 "TEST"
SQL> CREATE TABLE test.AAA (
2 T_ID VARCHAR2 (5) NOT NULL,
3 T_IMAGE BLOB NOT NULL
4 );
表已创建。
SQL> create or replace directory images as 'D:/WORKS/DEMO/AA/IMAGES';
目录已创建。
SQL> CREATE OR REPLACE PROCEDURE test.testp (
2 TID VARCHAR2,
3 FILENAME VARCHAR2) AS
4 F_LOB BFILE;
5 B_LOB BLOB;
6 BEGIN
7 INSERT INTO AAA (T_ID, T_IMAGE) VALUES (TID, EMPTY_BLOB ()) RETURN T_IMAGE INTO B_LOB;
8 F_LOB:= BFILENAME ('IMAGES', FILENAME);
9 DBMS_LOB.FILEOPEN (F_LOB, DBMS_LOB.FILE_READONLY);
10 DBMS_LOB.LOADFROMFILE (B_LOB, F_LOB, DBMS_LOB.GETLENGTH (F_LOB));
11 DBMS_LOB.FILECLOSE (F_LOB);
12 COMMIT;
13 END;
14 /
过程已创建。
SQL>
SQL> execute testp('F1001','AALOGO.GIF');
PL/SQL 过程已成功完成。
lauweiaaa
2007-03-14
打赏
举报
回复
你可以认为Directory是全局的
所有方案中创建的过程都能使用这个DIRECTORY
wiler
2007-03-12
打赏
举报
回复
以SHENHUA用户登陆,然后
CREATE OR REPLACE DIRECTORY IMAGES AS 'C:\Inetpub\wwwroot';
看提示是什么?
F15Eagle
2007-03-12
打赏
举报
回复
自己小顶一把
F15Eagle
2007-03-12
打赏
举报
回复
楼主 回 tgm78(shop34161266.taobao.com) :
难道不能在非SYS方案下创建directory对象吗?
tgm78
2007-03-12
打赏
举报
回复
关注。
oracle是否允许建立在非sys用户下?
F15Eagle
2007-03-12
打赏
举报
回复
哪位同人能告诉我如何在Oracle Enterprise Manager Console中创建directory也可以啊
F15Eagle
2007-03-12
打赏
举报
回复
楼主 回 wiler(@_@):
我试过了,不过IMAGES对象在方案SYS下,而不在SHENHUA下。我需要在SHENHUA下创建DIRECTORY
wiler
2007-03-12
打赏
举报
回复
SHENHUA.IMAGES
改为
IMAGES
试试
oracle
create
directory
,向ORACLE上传文件
create
directory
报错
现在要向Oracle上传文件,代码如下:
create
or
replace
function plan_fliles_load_file(filePath varchar2,fileName varchar2) return boolean/* *****************************************************************************...
Oracle导出目录无效,ORACLE目录路径无效错误解决方法(ORA-29280)
create
or
replace
directory
asdf as '/users/oracle/db_compare_tool/com_pro_dir';
create
or
replace
procedure test_output isv_file utl_file.file_type;beginv_file:=utl_file.fopen('asdf','asdf.sql','a');u...
ORA-29913、ORA-30653错误
ERROR: ORA-29913: error in executing ODCIEXTTABLEFETCH callout ORA-30653: reject limit reached 创建外部表:
create
or
replace
directory
data_dir as '/u01/app/oracle/diag/rdbms/fuiou/fuiou/trace/
Oracle
Directory
(目录)介绍
Oracle
Directory
(目录)可以让用户在Oracle数据库中灵活地对文件进行读写操作,极大地提高了Oracle的易用性和可扩展性。其语法如下所示:
CREATE
[OR
REPLACE
]
DIRECTORY
DIRECTORY
AS 'PATHNAME'; 创建和删除
Directory
的权限为:
CREATE
ANY
DIRECTORY
、DROP ANY
DIRECTORY
。赋...
存储过程执行提示:ORA-01031: insufficient privileges
存储过程执行提示:ORA-01031: insufficient privileges 一个奇怪的问题,困扰了两天,终于解决了。 以下的存储过程
create
or
replace
procedure proc_test_
create
is v_sql varchar2(1000); v_starttime date; begin --计算导入所有表的时间,记录开始时间 select sysdate into v_starttime from dual; dbms_outp
Oracle
17,140
社区成员
55,259
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章