C# 没有足够的过程缓存来运行此过程,Sybase ASE,C

C# 没有足够的过程缓存来运行此过程,Sybase ASE,C,c#,sap-ase,C#,Sap Ase,我在将一个~50meg文件加载到数据库时遇到了一个小问题。不幸的是,在我们询问我为什么要这样做之前,我需要添加此功能以用于遗留用途。该列被设置为Image类型,这意味着我不能不幸地以块的形式加载数据并连接它们,因为sybase不允许它用于Image类型的列 我正在使用DBType.Binary从DBProviderFactory构建参数。我试过其他类型,但没有任何帮助 我得到以下错误: 过程缓存不足,无法运行此过程、触发器或SQL批处理。请稍后重试,或要求SA使用更多过程缓存重新配置ASE 服务

我在将一个~50meg文件加载到数据库时遇到了一个小问题。不幸的是,在我们询问我为什么要这样做之前,我需要添加此功能以用于遗留用途。该列被设置为Image类型,这意味着我不能不幸地以块的形式加载数据并连接它们,因为sybase不允许它用于Image类型的列

我正在使用DBType.Binary从DBProviderFactory构建参数。我试过其他类型,但没有任何帮助

我得到以下错误:

过程缓存不足,无法运行此过程、触发器或SQL批处理。请稍后重试,或要求SA使用更多过程缓存重新配置ASE

服务器上的过程缓存设置为100meg

其他资料:

它可以处理35兆的文件 用PB编写的旧代码使用UPDATEBLOB,它在那里工作。
有什么建议吗?

100 MB的过程缓存非常小。特别是如果你有一个单一的程序,你知道taht将超过50MB。这是整个数据库实例的总过程缓存,而不是每个会话或每个过程


我建议您将过程缓存变大。

感谢Todd的回复。不幸的是,当我问到DBA时,他提到100MEG对于过程缓存来说是一个很大的内存,就像我们500多个用户站点中的一些一样。在执行exec sp_配置“过程缓存大小”时,我在2k内存页上的运行值为50000。争论的焦点是,它使用UpdateBlob命令与原始的PowerBuilder工具配合使用,没有理由对其进行更改。我是一名DBA,我的运行速度约为1GB。多亏了Todd,我将不得不与我的DBA聊天。祝我好运!