この手順を実行するのに十分な手順キャッシュがありません、Sybase ASE、C#
-
28-09-2019 - |
質問
〜50megファイルをデータベースにロードする小さな問題があります。残念ながら、なぜ私がこれをしているのかを尋ねる前に、この機能をレガシー目的で追加する必要があります。列はタイプとして設定されています 画像 つまり、残念ながらデータをチャンクにロードして連結することはできません(Sybaseは画像タイプの列を許可しないため)
現在、DBType.binaryを使用してDBProviderFactoryからパラメーターを構築しています。私は他のタイプを試しましたが、何も助けません。
フォローエラーが発生します:
この手順、トリガー、またはSQLバッチを実行するのに十分な手順キャッシュはありません。後で再試行するか、より多くの手順キャッシュでASEを再構成するようにSAに依頼します。
サーバー上の手順キャッシュは100megに設定されています。
他の情報:
- 動作します〜35メグファイル
- 古いコード(PBで書かれている)はupdateBlobを使用し、そこで機能します。
助言がありますか?
解決
100 MBの手順キャッシュはかなり小さいです。特に、1つの手順がある場合は、50 MBを超えるとわかっています。これは、セッションまたは手順ごとではなく、データベースインスタンス全体の合計手順キャッシュです。
手順キャッシュを大きくすることをお勧めします。
所属していません StackOverflow