CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Oracle >  开发

asp.net中调用oracle 9i中的存储过程的请教

楼主wyytht(伪随机)2004-05-03 23:10:39 在 Oracle / 开发 提问

 
   
  下面这段代码是我在Oracle   9i的方案下的enshi2004用户下根据向导定义的  
    (  
    p_id   in   number  
  )  
  as  
  begin  
      declare   x   number(30);  
      begin  
            select   count(*)   into   x   from   enshi2004.cgfgxx   where   id   =   p_id;  
            if   x   >   0   then  
              insert   into   enshi2004.testclob   values   (555,'ft','hehe');  
            else    
              insert   into   enshi2004.testclob   values   (999,'ft','hehe');  
            end   if;  
      end;  
  end   usp_test;  
   
  我在一个测试页面中使用的代码如下:  
  [color=#DC143C]String   strConnect   =   System.Configuration.ConfigurationSettings.AppSettings["strConnectDB"].ToString();   //这条  
   
  语句是从web.config中取得连接字符串  
   
  OracleConnection   oraConn   =   new   OracleConnection(strConnect);  
   
  OracleCommand   myCommand   =   new   OracleCommand("enshi2004.usp_test",oraConn);[/color]  
  //其中enshi2004是我的一个用户名,我所使用的表和存储过程都是这个用户的。usp_test是存储过程名。见上。  
  [color=#DC143C]myCommand.CommandType   =   CommandType.StoredProcedure;  
  myCommand.Parameters.Add("@p_id",245);  
  oraConn.Open();  
  myCommand.ExecuteNonQuery();[/color]  
  //每次总是这里出错,好像是调用存储过程出现的问题  
   
  oraConn.Close();  
  Response.Write("Success!");  
   
  提示错误如下:  
   
  ORA-01036:   非法的变量名/编号    
  说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。    
   
  异常详细信息:   System.Data.OracleClient.OracleException:   ORA-01036:   非法的变量名/编号    
   
  源错误:    
   
   
  行   34:   myCommand.Parameters.Add("@p_id",245);  
  行   35:   oraConn.Open();  
  [color=#FF4500]行   36:   myCommand.ExecuteNonQuery();[/color]行   37:   //每次总是这里出错,  
   
  好像是调用存储过程出现的问题  
  行   38:    
     
   
  源文件:   d:\保留\enshi\kjcgxx\testusp.aspx.cs         行:   36    
   
   
  请大虾指教!  
  谢谢!  
  问题点数:0、回复次数:3Top

1 楼jiezhi(风满袖)回复于 2004-05-05 12:42:40 得分 0

先在sqlplus里面验证你的存储过程能顺利执行,然后再到asp.net里面调试。Top

2 楼wyytht(伪随机)回复于 2004-05-05 20:24:00 得分 0

sql   plus里面执行一点问题都没有。  
  我现在把调用存储过程的语句改成了  
  String   strConnect   =   System.Configuration.ConfigurationSettings.AppSettings["strConnectDB"].ToString();  
  OracleConnection   oraConn   =   new   OracleConnection(strConnect);  
   
   
  OracleCommand   myCommand   =   new   OracleCommand();  
  myCommand.Connection   =   oraConn;  
  OracleParameterCollection   myParamCollection   =   myCommand.Parameters;  
  OracleParameter   myNewParameter   =   myParamCollection.Add("p_id",   Convert.ToInt32("245"));  
  myCommand.CommandType   =   CommandType.StoredProcedure;  
  myCommand.CommandText   =   "execute   enshi2004.usp_test()";  
   
   
  oraConn.Open();  
  myCommand.ExecuteNonQuery   ();  
  //每次总是这里出错,好像是调用存储过程出现的问题  
   
  oraConn.Close();  
  Response.Write("Success!");  
  但是,还是出错,提示错误是:  
  ORA-06550:   第   1   行,   第   15   列:   PLS-00103:   出现符号   "ENSHI2004"在需要下列之一时:   :=   .   (   @   %   ;   immediate   符号   ":="   被替换为   "ENSHI2004"   后继续。    
  说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。    
   
  异常详细信息:   System.Data.OracleClient.OracleException:   ORA-06550:   第   1   行,   第   15   列:   PLS-00103:   出现符号   "ENSHI2004"在需要下列之一时:   :=   .   (   @   %   ;   immediate   符号   ":="   被替换为   "ENSHI2004"   后继续。    
   
  源错误:    
   
   
  行   42:    
  行   43:   oraConn.Open();  
  行   44:   myCommand.ExecuteNonQuery   ();  
  行   45:   //每次总是这里出错,好像是调用存储过程出现的问题  
  行   46:    
     
   
  源文件:   d:\保留\enshi\kjcgxx\testusp.aspx.cs         行:   44Top

3 楼qcf2003(qcf)回复于 2004-06-09 17:21:02 得分 0

OracleCommand   myCommand   =   new   OracleCommand("usp_test",oraConn)myCommand.CommandType   =   CommandType.StoredProcedure;  
  myCommand.Parameters.Add("p_id",245);Top

相关问题

  • asp调用存储过程
  • asp调用存储过程
  • ASP调用存储过程...
  • ASP调用存储过程??
  • ASP调用ORACLE存储过程,返回值有问题???急!
  • 如何在ASP里面调用oracle的存储过程阿?
  • 着急!!!!在asp中存储过程(oracle)调用的问题
  • 在Oracle的存储过程中动态调用存储过程
  • Oracle调用Oracle存储过程?
  • jsp调用Oracle存储过程

关键词

  • asp.net
  • 存储过程
  • 代码
  • 执行
  • 用户
  • enshi2004
  • oraconn
  • mycommand
  • oraclecommand
  • usp

得分解答快速导航

  • 帖主:wyytht

相关链接

  • Oracle类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo