我的一亩三分地 我就喜欢!
13fen  设为主页
 收藏本站
 
当前位置: > 一亩三分地:首页 > 网络学院 > 网络编程 > ASP专区 > Asp数据库/打印 > 操作Oracle数据库实现上传图片到Blob类型的字段出现的问题
热门文章排行
热门文章排行 手推车”功能的实现(10-07)
八大法则防范ASP网站漏洞(10-23)
ASP教程十一、调试ASP脚本(10-23)
在JSP中访问数据库大全(10-23)
虚机服务中常见Asp.Net低级错误一览(03-21)
精采文章排行
精采文章排行 ASP.NET实现抓取网页中的链接(11-15)
ASP连接数据库的11种方法(11-10)
如何动态创建网页的RSS内容摘要(11-10)
ASP网站漏洞及入侵防范方法(11-10)
ASP自定义函数:对字符串正则替换(11-10)
技术专题推荐
网管论坛交流
 

操作Oracle数据库实现上传图片到Blob类型的字段出现的问题 

作者:佚名   来源:一亩三分地   点击:   日期:2007-03-23

通过使用OleDb操作Oracle数据库,成功实现图片上传到Blob类型的字段,但有时会发生ORA-01036错误的问题,经查询是错误提示为illegal variable name/number,不知道有谁能详细解释illegal variable name/number的意思

Oracle Data Provider for .NET
Hi
I am using ODP.NET (Oracle Data Provider for .NET) in my asp.net application.
I have a table in my oracle database called "equipmentgroup". When the page loads for the first time i retrieve all the records from the table to a dataset and save it to viewstate. Later on any addition or modification is done in the dataset only in disconnected mode. Finally,when user clicks update i call this function "update" which should do a batch update but instead it gives the following error :

"ORA-01036: illegal variable name/number "


private void update()
{
OracleParameter workParam;

OracleConnection cnn = new OracleConnection("Data Source=NEELESHR;User Id=tmse; Password=tmse;");
string sql = "INSERT INTO EquipmentGroup (Code, Description, LifeTime, PriamryLife, Grading, Inflator, ExtensionRate, MaintenanceFee) VALUES (:Code, :Description, :LifeTime, :PriamryLife, :Grading, :Inflator, :ExtensionRate, :MaintenanceFee)";
OracleCommand cmd = new OracleCommand(sql,cnn);
cmd.CommandType = CommandType.Text;

OracleDataAdapter da = new OracleDataAdapter();
da.InsertCommand = cmd;

workParam = da.InsertCommand.Parameters.Add("Code",OracleType.Char,10,"Code");
workParam.SourceVersion = DataRowVersion.Current;

workParam = da.InsertCommand.Parameters.Add("Description",OracleType.VarChar,50,"Description");
workParam.SourceVersion = DataRowVersion.Current;

workParam = da.InsertCommand.Parameters.Add("LifeTime",OracleType.Number);
workParam.SourceColumn = "LifeTime";
workParam.SourceVersion = DataRowVersion.Current;

workParam = da.InsertCommand.Parameters.Add("PriamryLife",OracleType.Number);
workParam.SourceColumn = "PriamryLife";
workParam.SourceVersion = DataRowVersion.Current;

workParam = da.InsertCommand.Parameters.Add("Grading",OracleType.Char,10,"Grading");
workParam.SourceVersion = DataRowVersion.Current;

workParam = da.InsertCommand.Parameters.Add("Inflator",OracleType.Number);
workParam.SourceColumn = "Inflator";
workParam.SourceVersion = DataRowVersion.Current;

workParam = da.InsertCommand.Parameters.Add("ExtensionRate",OracleType.Number);
workParam.SourceColumn = "ExtensionRate";
workParam.SourceVersion = DataRowVersion.Current;

workParam = da.InsertCommand.Parameters.Add("MaintenanceFee",OracleType.Number);
workParam.SourceColumn = "MaintenanceFee";
workParam.SourceVersion = DataRowVersion.Current;


try
{
da.Update(ds,"EquipmentGroup");
}
catch(Exception e)
{
Message.Text = e.Message;
}

}



Hi,

I think that you should add parameters with ":" included, like:
workParam =
da.InsertCommand.Parameters.Add(":Code",OracleType.Char,10,"Code");

OleDb Data Provider for .NET

string sql = "INSERT INTO EquipmentGroup (Code, Description, LifeTime, PriamryLife, Grading, Inflator, ExtensionRate, MaintenanceFee) VALUES (?, ?, ?, ?, ?, ?, ?, ?, )";


Hi,

I think that you should add parameters with ":" included, like:
workParam =
da.InsertCommand.Parameters.Add(":Code",OracleType.Char,10,"Code");





文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【论坛讨论

   相关文章:
·ASP中巧用Response属性 ·第六课:ASP脚本循环语句
·在 Web 页上使用条件数值格式 ·连接数据库查询手册(不仅仅适用于asp)
·警惕"给你的FileSystemObject对象加把锁" ·用ASP做全文检索

   文章评论:(条)
  
 请留名: 匿名评论   点击查看所有评论 网管论坛
 

  责任编辑:一分  声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。