代码之家  ›  专栏  ›  技术社区  ›  colithium

从C调用MySQL存储过程时超时#

  •  2
  • colithium  · 技术社区  · 14 年前

    SP_A 是调用 SP_B ,然后进行选择,然后更新与 斯普布 刚刚更新。 斯普亚 在SELECT和UPDATE语句周围有一个事务,后跟一个COMMIT。

    现在,我打电话的时候一切都很好 斯普亚 从MySQL命令提示符。然而,当我从C#调用它时,它每次都会超时。

    奇怪的是,如果我改变 斯普亚 这样它就不会 斯普布 从C#代码调用 斯普布 然后 斯普亚 另外,它也能工作。这是为什么?

    我仍在努力弄清到底是什么问题。可能是:

    • 不能调用调用另一个SP的SP
    • 不能调用调用与被调用方更新相同记录的另一个SP的SP
    • 如果涉及交易,你不能这么做

    记住,这个问题只有在使用MySqlCommand从C运行时才会出现



    注:
    MySql.Data版本2.0.50727
    MySQL连接器网6.2.2
    MySQL的ADO.Net驱动程序
    .NET框架4

    1 回复  |  直到 14 年前
        1
  •  2
  •   John M    14 年前

    听起来像是 CommandTimeout 是问题->当出现“长”查询时,.NET连接器将超时。增加 命令超时 阈值应允许查询/过程工作。

    注意:超时以秒为单位。