-2

このコードを使用して、データテーブルのデータをデータグリッドビューに配置したいと考えています。

   Tbl_events.DataSource = datatabel.DefaultView;

これには多くの時間がかかります。それに対するより速い解決策はありますか

完全なコード

                            connection.Open();
                            //datatabel.Load(new SqlCommand("SELECT type,datum,uur,controller,fout,teller,omschrijving,graad,var1,var2,var3,var4,var5,var6,var7,var8,var9,var10,var11,var12,var13,var14,var15,var16,var17,var18,var19,var20,var21,var22,var23,var24,var25,var26,var27,var28,var29,var30,var31,var32,var33,var34,var35,Cat_MMAP  FROM " + tabelnaam + " where " + filter + "", connection).ExecuteReader());

Tbl_events.DataSource=(new SqlCommand("SELECT type,datum,uur,controller,fout,teller,omschrijving,graad,var1,var2,var3,var4,var5,var6,var7,var8,var9,var10,var11,var12,var13,var14,var15,var16,var17,var18,var19,var20,var21,var22,var23,var24,var25,var26,var27,var28,var29,var30,var31,var32,var33,var34,var35,Cat_MMAP  FROM " + tabelnaam + " where " + filter + "", connection).ExecuteReader());

                            connection.Close();


                            jaartaltabel++;
                        }
                        catch
                        {
                            jaartaltabel++;
                            aantalfouten++;

                            connection.Close();
                        }
                    }
                    //Tbl_events.DataSource = datatabel.DefaultView;
                 // ColumnWidth();
                    statusbalk.Increment(20);
                }
                rijsql = 0;

SQLのデータをdatagridview.datasourceに入れようとしましたが、うまくいきません。多くの時間がかかるSQLクエリではなく、このコード:Tbl_events.DataSource = datatable.DefaultView;

4

1 に答える 1

0

これには多くの理由があります

  1. データセットが非常に重い可能性があります
  2. クエリに非常に長い時間がかかり、さらに多くの時間がかかる可能性があります

SQLプロファイラーを使用して、クエリの実行に時間がかかっているかどうかを確認し、それが理由でない場合は、返される行数を探してください。

于 2013-05-29T10:47:22.367 に答える