Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2008 用存储过程填充tableadapter比在SQL中运行存储过程花费的时间要长得多_Visual Studio 2008_Ado.net_Infragistics_Dataset - Fatal编程技术网

Visual studio 2008 用存储过程填充tableadapter比在SQL中运行存储过程花费的时间要长得多

Visual studio 2008 用存储过程填充tableadapter比在SQL中运行存储过程花费的时间要长得多,visual-studio-2008,ado.net,infragistics,dataset,Visual Studio 2008,Ado.net,Infragistics,Dataset,我一直在尝试用数据填充我的超级组合框,但这需要花费大量的时间。但是,当我在使用sql server的情况下运行相同的存储过程时,它所花费的时间相对较少。程序挂起的代码行是: SprocPatientsTableAdapter.Fill(Me.PatientsDataSet.sprocPatients, SelectedCustomerID) 所谓时间的显著差异,我指的是sql server中少于5秒的时间与程序中超过3小时的时间之差。尝试使用sql server探查器查看程序正在向数据库发送的

我一直在尝试用数据填充我的超级组合框,但这需要花费大量的时间。但是,当我在使用sql server的情况下运行相同的存储过程时,它所花费的时间相对较少。程序挂起的代码行是:

SprocPatientsTableAdapter.Fill(Me.PatientsDataSet.sprocPatients, SelectedCustomerID)

所谓时间的显著差异,我指的是sql server中少于5秒的时间与程序中超过3小时的时间之差。

尝试使用sql server探查器查看程序正在向数据库发送的确切查询。您可能会看到传递的一些其他参数会影响查询并显著降低查询速度。

它返回的结果集有多大?如果你通过线路发送2.5GB数据,将其存储在内存中,然后通过它来填充一个集合,那么是的,当然会很慢


我想最大的问题是:你真的在使用所有被归还的数据吗?请告诉我你没有抓取整个表,然后过滤到七行并显示ID和用户名

对于此特定结果,数据库将发送45522行(~9.08mb)

至于我们是否需要所有这些数据这一大问题,不,我们不需要,我一直在争论,直到我越过蓝色进入我脸上极其深的海军色彩的领域,但不知何故,我们获得一切(而不仅仅是某一时刻所需的)是“至关重要的”。第一个线索是,我们正在抓取比我们需要的更多的东西,这是一个事实,我们正在使用一个多列组合框(花了1k以上的时间才得到那个控件),抱歉,结束


该过程是:用户输入用户名和id-->选择他们想要查看(并有权访问)的医院-->然后,该医院中使用我们服务的所有患者都将加载到ultracombobox中,并按帐号自动填充(隐藏)。ultracombobox(多列)与其他几个文本框(姓、名、中间名等)绑定,因此可以编辑信息。

我要感谢RoadWarrior指导我最终解决禁用数据集约束的问题。使用数据集的超级组合框只显示数据,不进行操作,禁用约束后,我的超级组合框填充速度非常快