none
请教sql快速储存 RRS feed

  • 问题

  • 我的程序要接收数据并存储数据库  sql2005

    另一个独立的过程要从数据库中调出刚刚到达的数据

    接受和调用时间间隔非常短,我用一般的方法 打开连接执行sql语句关闭连接储存数据的话,调用过程往往查不到最新到达的数据;也就是调用过程查询的时候 储存过程还没完成

    现在我想找一种比较效率的方法在这种反复频繁的实时存储数据的情况下能很好的提高速度

    我查过sql存储过程  PROC 但是我不太能理解存储过程能提高这个效率

    因为执行存储过程一样需要打开连接 关闭连接只是中间执行的是存储过程而不是SQL语句

    但是我要存储的数据起始很简单 也不长 而且开关连接的消耗貌似比较大

    我试着在程序开始的时候打开连接 不关闭 然后等待数据来了直接执行sqlcommand然后在dipose这个command,但是会出错已经存在一个DATAREADER,先关闭什么什么的

    2013年5月3日 4:39

答案

全部回复

  • 我程序里面有非常多的 SQL操作 每次我都是打开连接执行sql关闭连接这样做

    这个没有一个方便的方法么

    2013年5月3日 5:28
  • 这两个过程是独立的 不能通过传递参数互相影响 我是通过全局变量来判断取值的

    两个过程数据是同步的 也就是A过程有一个B过程也有一个  B的处理过程需要A的数据 我就是从数据库里取

    但是A和B是独立的两个过程

    抛开这些不说 我就是想找一个可以高效快速存数据库的方法 应用在这种快速反复存储的情况下的 每条数据都不大 几个字符串 几十位而已

    2013年5月3日 23:52
  • 可以尝试用SqlDependency。


    Visual C++ MVP

    • 已标记为答案 Mclovin 2013年5月6日 10:49
    2013年5月6日 8:33
    版主
  • 可以尝试用SqlDependency。


    Visual C++ MVP


    谢谢提示,给我一定的帮助启发
    2013年5月6日 10:49