วันศุกร์ที่ 18 ตุลาคม พ.ศ. 2556

Method Query Return 1 only MS Access (Access)

Method Query Return 1 only MS Access (Access)

1.Method สำหรับ Return ค่ากลับ เป็น int หรือ String

            public int Query1(String is_sql)
                  {
                      try
                      {
                          cons.Open();

                          OleDbCommand cmd = cons.CreateCommand();
                          cmd.CommandText = is_sql;
                          return (Convert.ToInt32(cmd.ExecuteScalar().ToString()));
                      }
                      finally
                      {
                          cons.Close();
                      }  
        }

_________________

2.Method สำหรับ Return ค่ากลับ เป็น int หรือ String แต่รับ Parameter เป็น CMD 

        String sql1 = "select count(*) from employee e left  join emp_delete d on e.emp_id =  d.emp_id ";
                 sql1 = sql1 + "where d.emp_id  is  null and e.emp_id like ? ";


       Connectdb condb = new Connectdb();
       OleDbCommand CMD = new OleDbCommand(sql1, condb.reConnect()); // เรียกหาตัวแปล Con
       CMD.Parameters.Add(new OleDbParameter("emp_id", OleDbType.VarChar)).Value = txtCode.Text;
       int chk = condb.Query1(CMD); // นำค่าไปตรวจสอบ

__________

        public int Query1(OleDbCommand cmd)
                {
                    try
                    {
                        cons.Open();
                        return (Convert.ToInt16(cmd.ExecuteScalar().ToString()));
                    }
                    finally
                    {
                        cons.Close();
                    }
                }
_________________________

3. ใช้ OleDbDataReader มาช่วยในการรับข้อมูล แล้ว Return กลับไป 1 ค่า วิธีนี้ไม่แนะนำ เพราะ ExecuteReader ไว้รับค่ามากกว่า 1 ค่า 

public int checkdb(String is_sql)
           {
               int count1 = 0;
               cons.Open();
       
               OleDbDataReader reader;
               OleDbCommand cmd = cons.CreateCommand();
               cmd.CommandText = is_sql;
               reader = cmd.ExecuteReader();
               while (reader.Read())
               {
                  int count1 = Convert.ToInt32(reader[0].ToString());
               }
               cons.Close();
               return count1;
           }

ไม่มีความคิดเห็น:

แสดงความคิดเห็น