Advertisement

11.12.2007 at 07:26PM PST, ID: 22956277
[x]
Attachment Details

How to - retrieve records with 1 parameter - passed multiple times - looking for alternative solution

Asked by Jerry_Pang in .NET, C# Programming Language

Tags: retrieve, records, from, how, multiple

Currently, i have the following in my code, and works ok but takes longer to finish.
public datareader getempinfo(string param_emp_id)
{
...
SQL_COMMAND  =  " SELECT empID,name, address, telno
         FROM Employees
 WHERE emp_id=@emp_id "
...
parms[0].Value = param_emp_id;
return ExecuteREADER(
                    connection,
                    CommandType.Text,
                    SQL_COMMAND,
                    parms
                    );
...

the problem with this function is that it retrieves 1 record at a time.

the problem i am having is that:
there are about a million records in employee table
and i need to retrieve a thousand records at a time (typically around 1000-3000records)
i need to specify which employee info i need to retrieve

Doing this approach, its take a long time to finish.
during the looping
for each (empid_that_i_need)
{
FoundEMPData.add(getempinfo(empid));
}
takes roughly 3 records per second.

I need an alternative approach.
open a connection once
retrieve all the nessessary records
close the connection

any suggestions?

can this be done using dataadapter?
i mean, i have a list of emp_id in a datatable, then retrieve the related records from this table?

suggestions are appreciated. thanx

- storedprocedure wont work  - cause it has a maximum of varchar(8000)
- not sure about query builder where i generate a large query to be executed like the following. im not sure if there's a limit
SELECT empID,name, address, telno
         FROM Employees
 WHERE emp_id in ('empid1','empid2','empid3','empid4')"
Start Free Trial
[+][-]11.12.2007 at 07:45PM PST, ID: 20269385

At Experts Exchange, members can ask their questions to thousands of technology professionals, also known as Experts. Experts compete and collaborate to answer those questions by leaving comments like this one.

Start your 7-day free trial to view this Expert Comment or ask the Experts your question.

 
[+][-]11.12.2007 at 07:50PM PST, ID: 20269406

At Experts Exchange, members can ask their questions to thousands of technology professionals, also known as Experts. Experts compete and collaborate to answer those questions by leaving comments like this one.

Start your 7-day free trial to view this Expert Comment or ask the Experts your question.

 
[+][-]11.12.2007 at 08:18PM PST, ID: 20269496

Often, when Experts are collaborating with members who have asked questions, they will request additional information about the problem. Askers respond with an author comment like this one.

Start your 7-day free trial to view this Author Comment or ask the Experts your question.

 
[+][-]11.12.2007 at 08:55PM PST, ID: 20269571

At Experts Exchange, members can ask their questions to thousands of technology professionals, also known as Experts. Experts compete and collaborate to answer those questions by leaving comments like this one.

Start your 7-day free trial to view this Expert Comment or ask the Experts your question.

 
[+][-]11.12.2007 at 09:27PM PST, ID: 20269656

View this solution now by starting your 7-day free trial. Setting up your free trial is quick, easy, and secure. We will return you to this solution, unlocked, when you're done.

 

About this solution

Zones: .NET, C# Programming Language
Tags: retrieve, records, from, how, multiple
Sign Up Now!
Solution Provided By: surajguptha
Participating Experts: 3
Solution Grade: A
 
 
[+][-]11.12.2007 at 10:25PM PST, ID: 20269856

Often, when Experts are collaborating with members who have asked questions, they will request additional information about the problem. Askers respond with an author comment like this one.

Start your 7-day free trial to view this Author Comment or ask the Experts your question.

 
[+][-]11.12.2007 at 10:31PM PST, ID: 20269874

Assisted solutions are selected by the member who asked the question as a comment that contributed to their question's solution.

Start your 7-day free trial to view this Assisted Solution or ask the Experts your question.

 
 
Loading Advertisement...
20080716-EE-VQP-32 / EE_QW_2_20070628