c# - 出现此错误:无法将“System.DateTime”类型的对象转换为“Oracle.ManagedDataAccess.Client.OracleParameter”类型
问题描述
我正在尝试将选择查询传递到 oracle 数据库并使用以下代码作为参数传递
string startdate = "07/01/2021";
DateTime sd = DateTime.ParseExact(startdate, "d", provider);
OracleParameter param = new OracleParameter();
param.ParameterName = "startdate";
param.OracleDbType = OracleDbType.Date;
param.Value = sd;
cmd.Parameters.Add(param);
并且上面的代码运行良好并为我提供了所需的正确输出,但我想让它更短,所以使用以下代码行将其替换为
cmd.Parameters.Add(new OracleParameter("startdate", OracleDbType.Date).Value = sd);
我收到此错误无法将“System.DateTime”类型的对象转换为“Oracle.ManagedDataAccess.Client.OracleParameter”。 我不能使用第二种格式的原因是什么?
解决方案
您使用了错误的语法。尝试这个
cmd.Parameters.Add("startdate", OracleDbType.Date).Value = sd;
推荐阅读
- python - 使用 heroku 部署 django 应用程序:“远程:!没有这样的应用程序”
- javascript - 反应:覆盖父div元素的onClick-Event
- firebase - 如何将图像添加到 Firestore
- c# - 这条 C# 行读什么?
- ios - showBluetoothAccessoryPicker 返回错误 2
- vb.net - 无法使用 .net 使用 itext7 创建表
- sql-server - 将 Foxpro 翻译成 TSQL
- java - 从 Java 中确定当前 glibc 版本
- sql - SQL Case() 将结果转换为整数
- spring - “错误:您不能在关闭的连接上操作!!!” 随机发生在我的代码中,我该如何解决?