问题标签 [odac]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 使用 OracleDataReader (ODAC) 返回 Oracle 存储过程
我对使用 OracleDataReader(Oracle.DataAccess.Client) 的 Oracle 存储过程的输出数据有疑问。
程序:
C#代码:
在调试过程中,我看到了博士:
对于测试,我添加计数代码:
计数在任何时候都是 0。
此代码(例如):
或者
返回异常:
最后我需要从 Oracle SP 检索 CLOB 数据,但现在在这一步停止。使用:Visual Studio 2012、ASP.Net(网络项目,但我将此代码写入 WinForms 应用程序并遇到同样的问题)、oracle.dataaccess.dll 4.112.3.0
c# - 实体框架通配符和 Linq
是否可以构造一个包含通配符的有效 Linq 查询?
我已经看到了这个问题的各种答案,建议使用:
或构建 RawSql:
如果通配符不在字符串的开头或结尾,例如searchTerm = "Foo%Bar"
.
使用 RawSql 的第二个解决方案并不适合我,而且感觉像是一种廉价的出路。但它确实有效。
我尚未尝试的第三个选项是创建可以解析搜索词并构建有效的 Linq 查询的东西,这是@Slauma 在下面的链接 2 中尝试的东西。但是,如果通配符不在搜索词的开头或结尾,这仍然不起作用。
所以问题是:是否可以构造一个包含通配符的有效 Linq 查询?
编辑:值得一提的是,在这种情况下,我使用的是 Oracle 数据访问组件 (ODAC/ODP),但我认为在这种情况下并没有太大的不同。
链接:
1. Entity Framework 中的“like”查询
3.使用RawSql
windows - 如何检查是否已安装 Oracle 数据访问组件?
如何检查我的计算机上是否安装了 Oracle 数据访问组件和版本?
另外如何检查是否安装了 Oracle Data Provider 和版本?
oracle - 我需要在部署机器中安装或配置什么来运行带有 Oracle 控制台应用程序的实体框架?
我在 Windows 7 + VS 2012 下使用 Entity Framework 4.1 做了一个完整的开发
我的应用程序是一个 Windows 控制台应用程序,它使用实体框架来访问在远程服务器中运行的 Oracle 数据库。我的应用程序具有 x64 目标设置,而我的 Windows 7 也是 64 位的。
在我开始部署到生产主机之前,开发机器上一切正常。
生产主机:新安装的 Windows Server 2012。安装 ODAC 64 位并在 odp.net/managed/x64 文件夹运行 configure.bat。
我正在从 VS2012 的 /bin/Debug 文件夹中生成的应用程序中获取所有文件,并与 Oracle.DataAccess.dll 一起复制到目标机器。
我的连接字符串有providername = System.Data.EntityClient
. 这是由 EF 模型优先向导生成的。
运行时,我收到以下异常:
我检查了 ODCA configure.bat 并安装了 OracleManageDataAccessDTC.DLL
所以,我很困惑。我有Oracle.DataAcess.dll
,OracleManageDataAccessDTC.dll
但这些都不起作用。这是我第一次使用 EF 4.1 部署 Oracle。
我看了很多帖子,根本没有得出任何结论。
希望可以有人帮帮我。
oracle - ODP.NET 是否支持带有 DbContext 的 EF 模型优先?
我们正在尝试在 Oracle 11g 和 ODP.NET 11.2.0.3.20 中使用实体框架模型优先方法。我们希望将 EF 4.1 或 EF 5.0 与DbContext
.
简短版:有没有人设法做到这一点?
长版:
在 VS2010 和 Entity Framework 4.0 上,一切正常。我能够Generate Database from Model
。
当我尝试使用 EF 4.1 或 EF 5.0 时,我总是Object reference not set to an instance of an Object
在 Visual Studio 中收到一条错误消息:
我尝试了以下方法:
- 在 VS2012 中创建了一个新的 EF 5.0 模型,将代码生成工作流和模板设置为 Oracle 的东西(
Generate Oracle via T4 (TPT).xaml
和SSDLToOracle.tt
)。然后我单击Generate Database from Model
并选择了一个正常工作的 Oracle 连接,但 Visual Studio 只是显示该错误。 - 在 VS2012 中创建了一个 EF 4.1 模型,同样的错误。
- 在 VS2010 中创建了一个 EF 4.1 模型,同样的错误。
- 在 EF 5.0 和 EF 4.1 中尝试了 Database-First 方法,同样的错误。
它仅在我使用 VS2010 和 EF 4.0 时才有效。
但是,Oracle 声称它应该可以工作,请参阅http://www.oracle.com/technetwork/topics/dotnet/downloads/install112030-1440546.html:
有没有人设法将 EF 4.1 或 5.0 与 Oracle ODP.NET 一起使用?
编辑:原来它在 32 位虚拟机上运行良好。问题只存在于我的 64 位 Windows 7 机器上。
c# - 如何在 C# 中执行 Oracle 函数
我想从 c# 执行 oracle 函数。我使用oracle 数据访问OracleConnection 和OracleCommand。我的功能是;
visual-studio-2010 - 通过visual studio 2010连接oracle数据库
我已经安装了 oracle 数据库 11gR2 和 Visual Studio 2010 32 位。然后我尝试为 oracle 客户端 11.2.0.1.2 安装 odac。它给出了这个错误。
“Oracle 客户端 11.2.0.1.1 的 Oracle 数据访问组件只能安装在现有的 Oracle 客户端 11.2 主页上。使用 Oracle 服务器 11.2.0.1.0 的 Oracle 数据访问组件安装在 Oracle 服务器 11.2.0.1.0 主页中。 "
我不明白下一步该怎么做。希望您能提供帮助...谢谢。
c# - 在 IIS 中设置网站的 Oracle ODAC 错误:A 类型不能转换为 B 类型?
我有一个使用 cassini 在 VS2010 中开发的网站。它已经投入生产,现在我正在升级 IE9,但是当我将它加载到我的本地 IIS 中时(所以我可以从 VM 中访问它),我得到了这个:
获取数据库连接的问题:[A]Oracle.DataAccess.Client.OracleConnection 无法转换为 [B]Oracle.DataAccess.Client.OracleConnection。类型 A 源自 'Oracle.DataAccess, Version=4.112.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342' 在位置 'C:\Windows\Microsoft.Net\assembly\GAC_32\Oracle.DataAccess\v4 的上下文'Default' .0_4.112.2.0__89b483f429c47342\Oracle.DataAccess.dll'。类型 B 源自位置 'C:\Windows\assembly\GAC_32\Oracle.DataAccess\2.112.2.0__89b483f429c47342\ Oracle.DataAccess.dll'。在 DbLib.MyDatabase.getConnection()
任何线索这是什么或如何解决它?
c# - 将 DbSet.Find 与 Oracle 和 EF CodeFirst 一起使用
我在很多网站上,特别是在 oracle 论坛中读到,Oracle 不正式支持 Entity Framework Code First 或 DbContext API。
话虽如此,我还在很多地方读到人们使用 EF CodeFirst 和 Oracle 成功部署了项目。我遇到了很多问题,并且一直在调整代码以使其也可以与 SQL Server 一起使用。
一个似乎不起作用的函数是 DbSet.Find,您可以在其中将密钥作为参数传递并准确获取该记录。
使用 Find (如果我在同一个代码库上使用 sql server 效果很好)会引发异常并出现以下错误:
我读了这个问题,他们提到了套管,这不是我的情况,所以对我来说没有解决办法。
奇怪的是 usingDbSet.SingleOrDefault(x => x.Id == SomeId)
工作得很好,所以我很确定模式、表名和列的大小写是好的。
有人在使用 DbContext 时成功使用 Find 吗?
请注意:我没有使用 EDMX,也无法使用它,我们必须继续使用 CodeFirst。
谢谢。
c# - EF 表达式中的多个“或”语句
给定以下形式的过滤器参数列表:
在哪里:
如何编写将导致以下 SQL where 子句的表达式(注意以粗体显示的OR运算符:
WHERE (age = 22 AND name = "phil")
OR (age = 19 AND name = "dave")
OR (age = 31 AND name = "nick")
我当前的实现导致由AND运算符分隔的每个语句:
上面的代码产生以下 SQL:
WHERE (age = 22 AND name = "phil") AND (age = 19 AND name = "dave") AND (age = 31 AND name = "nick")
我需要在表达式中进行哪些更改以使生成的 SQL 在指定位置使用“OR”而不是“AND”?我宁愿尽可能避免使用第三方库。
编辑:正如@KingKing 所建议的, aunion
确实返回了所需的结果:
我仍然想知道是否可以使用所描述的“或”运算符生成语句。