asp.net项目,使用oracle数据库进行数据更新,总是提示ORA-01008: not all variables bound。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net项目,使用oracle数据库进行数据更新,总是提示ORA-01008: not all variables bound。相关的知识,希望对你有一定的参考价值。

但从语句语法上讲有错误么?这个数据库表里还有其他内容,不过我只想对个别部分进行更新。
string sqlUpdate = "update T_XIN_WENZHENGCE set NEWSTITLE = '" + tbxNewsTitleE.Text + "',WRITERNAME = '" + tbxWriterE.Text + "',NEWSDETAIL = '" + tbxNewsDetailE.Value + "',DATETOSHOW = to_date('" + NowE + "','yyyy-mm-dd hh24:mi:ss') where NEWSID=:NEWSID"

参考技术A NEWSID=:NEWSID oralce 中:= 是复制的意思,一般初始化的时候用,你应该用=本回答被提问者和网友采纳 参考技术B NEWSID=:NEWSID 也就是说你有一个要赋值的变量:NEWSID,但你没有给他值,所以返回的问题是“没有找到所有的变量” 参考技术C 从语法上看不出来有什么问题?
你最好把代码贴出来看看。

在 ASP.NET MVC 项目中无法使用实体框架连接到 Oracle 数据库

【中文标题】在 ASP.NET MVC 项目中无法使用实体框架连接到 Oracle 数据库【英文标题】:Cannot connect to Oracle Database with Entity Framework in ASP.NET MVC project 【发布时间】:2017-08-09 09:56:28 【问题描述】:

上下文:我正在创建一个 Web 应用程序(在 ASP.NET MVC 4 中),它将提供对现有 Oracle 数据库的访问。我只需要能够从该数据库读取数据,无需插入或更新等。我在 Visual Studio Express 2015 for Web 中工作。

我已经搜索了很多问题的答案,但无济于事。

我的目标是首先使用实体​​框架数据库创建模型。我已使用 NuGet 将实体框架、Oracle.ManagedDataAccess 和 Oracle.ManagedDataAccess.EntityFramework 添加到我的项目中。 但是,当我尝试将“ADO.NET 实体数据模型”添加到我的模型时,无论是选择“数据库中的 EF 设计器”还是“数据库中的代码优先”,我都会得到以下信息:

我错过了什么?

我发现资源说我需要安装 Oracle Developer Tools for Visual Studio。但是,Visual Studio Express 不支持它,我无法更改我的 IDE。

我没有在这台开发计算机上安装 Oracle 客户端,但我是 sqldeveloper,使用它访问数据库没有问题。我需要安装 Oracle 客户端吗?通过 NuGet 安装的 dll 还不够吗?我问是因为我是实习生,安装任何新软件都需要验证,这需要相当长的时间。

【问题讨论】:

Man oracle db 不是微软的产品之一,所以他们不会把它放在那里,你需要从 nuget 下载连接器然后你才能连接它。 阅读this 谢谢瓦尔基里。但是,我已经阅读了您链接到我的内容,正如我在帖子中所说,我已经使用 NuGet 安装了库,但我无法安装 ODAC,因为 Visual Studio Express 不支持 ODT。因此,我首先提出了这个问题。 【参考方案1】:
    将您的数据库连接到您的项目 在空数据集中插入新项 在该数据集中,将工具箱中的 TableAdapter 插入您的数据集中。 弹出选择表的窗口(你可以写sql来选择需要的表) 在第 4 步之后。您拥有自己的实体。

【讨论】:

【参考方案2】:

我有同样的错误,我这样修复:

你需要安装:

带有 .NET Framework 4.5 或更高版本的 Microsoft Visual Studio 2015 或更高版本。

Oracle 数据库 12c 或更高版本。

来自 OTN 的 Oracle 数据访问组件 (ODAC) 12c 第 3 版 (12.1.0.2.1) 或更高版本。 ODAC 下载包括适用于 Visual Studio 和 ODP.NET 的 Oracle 开发人员工具

本教程所需的文件。 使用 NuGet 安装和配置 Oracle Data Provider for .NET 教程。(安装:来自 Nuget 的 Oracle.ManagedDataAccess.EntityFramework)。

参考:http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/dotnet/2015/entityframework_linq_modelfirst/Entity%20Framework%20LINQ%20and%20Model%20First.html#overview

【讨论】:

以上是关于asp.net项目,使用oracle数据库进行数据更新,总是提示ORA-01008: not all variables bound。的主要内容,如果未能解决你的问题,请参考以下文章

asp.NET 中把Excel文件导入到 Oracle 数据库中怎么做,请大家帮助

从 ASP.NET 中的 Oracle DB 函数读取数据表

ASP.NET MVC 和 Oracle 11g 的最佳 OLAP 选项

来自 Oracle 存储过程的 ASP.NET 数据集

在asp.net中如何对一些数据进行分组

Oracle ASP.net 提供者模型对象性能