关于.net 中更新oracle更新时间的问题

Xhh12301 2015-08-11 04:11:28
public void UpdateScore(int baseScore, int Special,string caseNumber)
{
Database db = DatabaseFactory.CreateDatabase("EpointMis_ConnectionString");
string strSql = (db.DbProviderFactory.ToString() != "System.Data.OracleClient.OracleClientFactory") ?
"update Punish_MemberScore set BaseScore_End=:baseScore,SpecialScore_end=@Special,EndTime=@endTime where CaseNumber=@caseNumber" :
"update Punish_MemberScore set BaseScore_End=:baseScore,SpecialScore_end=:special,EndTime=:endTime where CaseNumber=:caseNumber";
DbCommand cmd = db.GetSqlStringCommand(strSql);

db.AddInParameter(cmd, "baseScore", DbType.Int32, baseScore);
db.AddInParameter(cmd, "special", DbType.Int32, Special);
db.AddInParameter(cmd, "endTime", DbType.Date, System.DateTime.Now.ToString());
db.AddInParameter(cmd, "caseNumber", DbType.String, caseNumber);

db.ExecuteNonQuery(cmd);
}
不报错,页面一直显示请稍后,
...全文
86 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
你本意是判断是不是Oracle的Provider,如果是就用:号,不是就是@号,但你必须每句都是同一个符号吧,你第一个为啥又有冒号又有@号
Xhh12301 2015-08-11
  • 打赏
  • 举报
回复
引用 2 楼 starfd 的回复:
t BaseScore_End=:baseScore,SpecialScore_end=@Special,EndTime=@endTime where CaseNumber=@caseNumber ORACLE参数化前缀是冒号,不是@号
那个是微软企业库推荐方法,是可以选择数据库的,前面的是sql语句后面的是Oracle语句
  • 打赏
  • 举报
回复
t BaseScore_End=:baseScore,SpecialScore_end=@Special,EndTime=@endTime where CaseNumber=@caseNumber ORACLE参数化前缀是冒号,不是@号
於黾 2015-08-11
  • 打赏
  • 举报
回复
参数一会用:,一会用@,是几个意思

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧