qq_30420315
善哉尚在
2019-12-11 09:42
采纳率: 55.3%
浏览 851

c# 操作sqlserver新增数据成功,但查询时却查不到!

图片说明
如图所示,业务逻辑为查询对应编码的数据是否已存在,不存在则新增。或者编码已存在,但名称不一致,则进行更新。但在具体的操作过程中,新增数据到数据库已成功,在数据库查询新增的数据也已经存在,但在做同样的操作时,却会忽略或者说没有找到刚刚新增的数据,从而会新增或修改和刚才同样的数据。接触C#和SQL SERVER的时间的都不长,是否是存在着数据库缓存问题,还是在程序操作过程中没有进行数据库更新操作(或者说成重连数据库),这个问题该如何解决?大神们

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • flybox0384
    flybox0384 2019-12-11 13:04
    已采纳

    代码不全无法判断,提供一个排查方法 1、代码中在脚本执行位置加入日志,2、加入try cach 3、在运行程序时打开SQL Server Profiler查看sql收到脚本

    点赞 评论
  • PCYaoYao
    PCYaoYao 2019-12-11 10:04

    绝对是你代码的问题,你把这个sql写到日志执行下 说不定是多了个空格少了个空格的小问题。
    另外建议使用TSQL的if exists

    点赞 评论
  • caozhy

    你只有一个图,代码没有贴完整,怎么判断呢
    你说你新增数据成功,何以见得?没有报错?
    sqlAdd只是查询语句,下面sqlCommand.Execute(sqlAdd)了没有,并且此时的sqlAdd是插入的语句么?没有报错?
    缓存应该不存在。

    点赞 评论

相关推荐