首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PL/SQL中的文件上载过程

PL/SQL中的文件上载过程
EN

Stack Overflow用户
提问于 2012-05-24 04:57:10
回答 2查看 5.1K关注 0票数 0

我正在处理一个PL/SQL Oracle web应用程序,我需要创建一个处理文件上传表单的过程。文件上传表单域名称为new_photo。这是我拥有的代码,但当我提交时,我总是得到一个错误。我在网上或oracle文档中找不到任何关于此任务的示例。

错误:

代码语言:javascript
复制
Error 6550 calling procedure:

ORA-06550: line 2, column 3:
PLS-00306: wrong number or types of arguments in call to 'INSERT_NEW_PHOTO'
ORA-06550: line 2, column 3:
PL/SQL: Statement ignored

The last SQL statement executed was:

begin
  insert_new_photo(:B1,:B2,:B3,:B4,:B5,:B6,:B7,:B8);
end;

代码:

代码语言:javascript
复制
CREATE OR REPLACE PROCEDURE insert_new_photo (new_photo VARCHAR2 DEFAULT NULL) IS
    BEGIN

       -- if the user didn't chose a file to upload
       IF new_photo IS NULL OR LENGTH( new_photo ) = 0
       THEN
       print_page_header;
       print_error( 'Please supply a file name.' );
       print_upload_form;
       --print_page_trailer( TRUE );
       return;
   END IF;

END insert_new_photo;
/

表单:

代码语言:javascript
复制
<form action="insert_new_photo" method="post" enctype="multipart/form-data">
<input type="text" name="new_photo"><br>
<input type="submit" value="ok">
</form>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-24 17:03:12

你在使用mod_plsql吗?如果是这种情况,我认为您不能直接将文件发布到PL/SQL :您必须定义一个特定表并修改相关的DAD参数(请参见http://docs.oracle.com/cd/E14571_01/portal.1111/e12041/concept.htm#i1005866)。

HTH。

Alessandro

票数 3
EN

Stack Overflow用户

发布于 2012-05-24 05:02:25

如果我错了,请纠正我,但您的问题似乎是您在调用过程时有太多的参数

代码语言:javascript
复制
insert_new_photo(:B1,:B2,:B3,:B4,:B5,:B6,:B7,:B8);

这里有8个参数,但过程本身只有一个

代码语言:javascript
复制
insert_new_photo (new_photo VARCHAR2 DEFAULT NULL)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10727721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档