อยากถามเรื่อง call stored procedure โดยมีค่า parameters จาก textbox แล้ว return มาใส่ data gridview

สวัสดีค่ะ อยากถามเรื่อง call stored procedure โดยมีค่า parameters จาก textbox แล้ว return มาใส่ data gridview หน่อยค่ะ

คือไม่เข้าใจเวลาเรียกมันมี statement แบบไหน เพราะดูจากหลายๆเว็ปแล้วมันไม่ค่อยจะเหมือนกันเลยค่ะ

พรุ่งนี้ว่าจะลองทำตามเว็ปนี้ดูค่ะ ไม่รู้จะได้หรือป่าว

[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้
ขอบคุณค่ะ
คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
ความคิดเห็นที่ 1
โค้ดในเว็บที่ส่งมา store procedure เขาทำหน้าที่ในการ insert คิดว่าไม่น่าจะตรงกับจุดประสงค์นะครับ

ตัวอย่างครับ


private void button1_Click(object sender, EventArgs e)
{
   //1. กำหนด ConnectionString พร้อมทั้งเปิด Connection Object ให้ Open
   //ขึ้นอยู่กับระบบใครระบบมันนะครับ  แล้วแต่ไปหา connection string มาให้ได้
   string ConnectionString = "Data Source=10.0.0.6;Initial Catalog=ecomdata7;User ID=usrno1;Password=kd0*b+ej;";
   System.Data.SqlClient.SqlConnection cnn = new System.Data.SqlClient.SqlConnection(ConnectionString);
   cnn.Open();

   //2. ใช้ DataAdapter ที่ต้องใช้เพราะเราต้องการค่ากลับในรูปแบบของ DataTable คือเราต้องการ Query Result set ออกมา
   //  parameter ที่ต้องใส่ก็มีชื่อ store procedure , connection object( cnn ) ซึ่งสั่ง open ไว้แล้ว
   System.Data.SqlClient.SqlDataAdapter adpt = new System.Data.SqlClient.SqlDataAdapter("proc_InvoicesOverview", cnn);
   //กำหนดชนิด command เป็น store procedure
   adpt.SelectCommand.CommandType = CommandType.StoredProcedure;
   //สร้าง parameter ให้ตรงกับ store procedure ที่จะเรียก ในที่นี้ใช้ store procedure มี parameter ตัวเดียวชื่อ CompanyID
   //กำหนดค่าโดยดึงจาก textbox ที่ปรากฏอยู่บนฟอร์ม
   // ** หมายเหตุ ** ถ้ามี parameter มากกว่า 1 ตัวก็ใส่ให้ครบนะครับ
   adpt.SelectCommand.Parameters.AddWithValue("@CompanyID", textBox1.Text);

   //3. จัดการ fill ลง DataTable
   DataTable dt = new DataTable();
   adpt.Fill(dt);

   //4. binding datatable ที่ได้กับ datagridview ที่วางไว้แล้วบนฟอร์ม
   dataGridView1.DataSource = dt;

   //5. ปิด connection
   cnn.Close();
}

แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่