4

私が行おうとしている電話は

DataTable dt = connection.GetSchema("Columns");

しかし、クエリでタイムアウトが発生します。この呼び出しのタイムアウトを増やす方法はありますか?

データベース自体への接続は問題なく開かれるため、接続タイムアウトは役に立ちません。

SqlCommandのCommandTimeoutプロパティがあることも確認しましたが、それがここで本当に適用できるかどうかはわかりません。

GetSchemaでは、通話のタイムアウトを延長する方法はありますか?どんな助けでも大歓迎です!

4

2 に答える 2

3

現在のユーザーには、このコマンドに必要な権限がない可能性があると推測しています。

やってみました:

DataTable dt = connection.GetSchema("Columns", new string[] {null, null, "MyTable");

その結果はありますか?

また、ユーザーの説明を使用して、すべての sys テーブルを回避するようにしてください。クエリが小さくなる可能性があります。

DataTable dt = connection.GetSchema("Columns", new string[] {null, "dbo", null);
于 2012-12-04T23:10:13.390 に答える
3

いいえ、.getschema() のタイムアウトを変更する方法はありません。理由はわかりませんが、このように設計されていると思います。180秒です。

ただし、タイムアウトを使用できるsqlcommandを使用して、スキーマテーブルにクエリを実行して同じ情報を取得できます。

于 2012-12-04T23:18:06.663 に答える