Ashwin Divekar
Ashwin Divekar

Reputation: 21

can i use multiple queries in using single mysqlconnection in c#

public static void InitializeUsers(MySqlConnection cn, List<MarketingExecutive> marketingExecutives, List<FieldOfficer> fieldOfficers)
        {

            cn.Open();
            MySqlCommand SelectCommand = new MySqlCommand("select * from loanrequestprocessing_db.tbl_users where TypeOfUser='Marketing Executive'",cn);

            MySqlDataReader reader = SelectCommand.ExecuteReader();
            while(reader.Read())
            {
                MarketingExecutive M = new MarketingExecutive()
                {
                    ExecutiveId = Convert.ToInt32(reader[0]),
                    ExecutiveName = Convert.ToString( reader[1]),
                    Area = Convert.ToString(reader[3]),
                    Address = Convert.ToString(reader[4])



                };


                marketingExecutives.Add(M);
            }
            reader.Close();
            MySqlCommand SelectCommand2 = new MySqlCommand("select * from loanrequestprocessing_db.tbl_users where TypeOfUser='Field Officer'", cn);

            MySqlDataReader reader2 = SelectCommand2.ExecuteReader();
            while(reader2.Read())
            {
                FieldOfficer f = new FieldOfficer()
                {
                    OfficerId = Convert.ToInt32(reader2[0]),
                    OfficerName = Convert.ToString(reader2[1]),
                    Area = Convert.ToString(reader2[3]),
                    Address = Convert.ToString(reader2[4])

                };
                fieldOfficers.Add(f);
            }
            reader2.Close();

            cn.Close();


        }

In above Method I have used single connection with multiple readers in same connection keeping in mind only one reader is opened at a time still i m getting error what is wrong with my code any help will be welcome i am new to c#

Upvotes: 1

Views: 1200

Answers (1)

Wintergreen
Wintergreen

Reputation: 234

Yes.

It is better to use "using" to open a connection and write two queries in this connection.

using (MySqlConnection connection = new MySqlConnection (connectionString))
  {
      connection.Open();

      // write codes here

 }

Upvotes: 2

Related Questions