.NET 使用 ODP.NET 组件访问Oracle提示 外部组件发生异常 错误的解决办法
2017-12-14 10:19
886 查看
.NET 使用 Oracle.ManagedDataAccess.Client (也就是ODP.NET4.0,Oracle官方提供的数据访问组件),带参数访问数据库时,如果SQL语句中的参数顺序和参数数组中的顺序不一致时,会提示 “外部组件发生异常” 错误,所以一定要让参数顺序前后一致才可以。
例如:
var sql = @“UPDATE User SET MobileTel=:MobileTel WHERE Id=:Id”;
OracleParameter[] para = new OracleParameter[]
{
new OracleParameter(":Id",Id),
new OracleParameter(":MobileTel",MobileTel)
};
int rows = SqlHelper.ExecuteNonQuery(sql , para);
以上代码执行就会出错:一直会提示 “外部组件发生异常” 错误。
应该改成:
OracleParameter[] para = new OracleParameter[]
{
new OracleParameter(":MobileTel",MobileTel),
new OracleParameter(":Id",Id)
};
int rows = SqlHelper.ExecuteNonQuery(sql , para);
注意两个参数 Mobile 和 Id 在SQL语句和参数数组中的顺序都要一致。
例如:
var sql = @“UPDATE User SET MobileTel=:MobileTel WHERE Id=:Id”;
OracleParameter[] para = new OracleParameter[]
{
new OracleParameter(":Id",Id),
new OracleParameter(":MobileTel",MobileTel)
};
int rows = SqlHelper.ExecuteNonQuery(sql , para);
以上代码执行就会出错:一直会提示 “外部组件发生异常” 错误。
应该改成:
OracleParameter[] para = new OracleParameter[]
{
new OracleParameter(":MobileTel",MobileTel),
new OracleParameter(":Id",Id)
};
int rows = SqlHelper.ExecuteNonQuery(sql , para);
注意两个参数 Mobile 和 Id 在SQL语句和参数数组中的顺序都要一致。
相关文章推荐
- .Net中使用组件后发生System.ArithmeticException异常的解决办法
- win7安装oracle 10g时发生“程序异常终止。发生内部错误”的提示 解决办法
- EF(Entity Framework)发生错误”正在创建模型,此时不可使用上下文“的解决办法。 正在创建模型,此时不可使用上下文。如果在 OnModelCreating 方法内使用上下文或如果多个线程同时访问同一上下文实例,可能引发此异常。请注意不保证 DbContext 的实例成员和相关类是线程安全的。 临时解决了这个问题,在Context的构造函数中,禁用了自动初始化:
- ASP.NET调用Oracle组件提示无法装载DLL(oci.dll)错误的解决办法
- Windows XP下使用ASP.Net 访问Access数据库提示“System.Data.OleDb.OleDbException: 未指定的错误”的解决办法
- net start mysql启动mysql,提示发生系统错误 5 拒绝访问 解决方法
- Win7/Win8 系统下安装Oracle 10g 提示“程序异常终止,发生未知错误”的解决方法
- 使用 ODP.NET 访问 Oracle(.net如何访问Oracle)详解
- .net 开发使用office组件后,IIS中部署出现无法访问的解决办法
- win7/win8下安装Oracle1出错10g,提示“程序异常终止,发生未知错误”解决方法
- Windows7 Server 2008 下安装Oracle 10g提示“程序异常终止,发生未知错误”的解决方法
- Windows7下安装Oracle 10g提示“程序异常终止,发生未知错误”的解决方法
- oracle 11g安装客户端后使用ps/sql连接提示TNS适配器错误的解决办法
- [经使用有效]Sqlserver2005附加数据库时出错提示操作系统错误5(拒绝访问)错误5120的解决办法
- [导入].Net中使用com组件后发生System.ArithmeticException异常的解决办法
- Win7/Win8 系统下安装Oracle 10g 提示“程序异常终止,发生未知错误”的解决方法
- Windows7 Server 2008 下安装Oracle 10g提示“程序异常终止,发生未知错误”的解决方法
- Windows7下安装Oracle 10g提示“程序异常终止,发生未知错误”的解决方法
- Mysql net start mysql启动,提示发生系统错误 5 拒绝访问 解决之道
- Win7/Win8 系统下安装Oracle 10g 提示“程序异常终止,发生未知错误”的解决方法