次のような単純な非常に単純なselectステートメントがあります。
SELECT * FROM vContacts
vContacts は、tblContacts テーブルから作成されたビューで、218 レコードしかありません。
前述の選択クエリを使用すると、全体で 9.89 秒かかります! DataGridView を埋めるために! 名前は英語ではなくペルシャ語である必要があり、すべてのフィールドが存在し、他に何もないため、フォームで
を使用View
します)。built-in
内で view ステートメントを実行しようとすると、驚くほど高速です。しかし、私のWindowsフォームでは10秒かかります!!DataGridview
Visual Studios 2010
SQL Designer
より正確には :
これは View ステートメントです:
SELECT ID, Name, Tel, Mobile, Address, Description
FROM dbo.tblTel
このメソッドを使用して、テーブル全体を取得します
public static DataTable GetTable(string tableName, string conncetionString, bool structureOnly = false)
{
DataTable table = new DataTable();
string query = structureOnly ? string.Format("SELECT * FROM {0} WHERE 1=0", tableName) : string.Format("SELECT * FROM {0} ", tableName);
SqlConnection connection = new SqlConnection(conncetionString);
connection.Open();
SqlCommand command = new SqlCommand(query, connection);
SqlDataAdapter reader = new SqlDataAdapter(command);
reader.Fill(table);
connection.Close();
return table;
}
次のように使用します。
dataGridView.DataSource = DBAPI.GetTable(vContacts,DBAPI.ConnectionString);