สวัสดีครับทุกท่านผมหายไปเสียนาน
มารอบนี้ผมกำลังกลับมาศึกษา .Net Technology อีกครั้งหลังจากวางไว้บนชั้นหนังสือมานาน
และบังเอิญได้ข้อแนะนำ ข้อเสนอแนะการเชื่อมต่อและจัดการกับ Database มาฝากท่านๆครับ
หากท่านที่ทราบแล้วก็ขออภัยด้วยครับ เพราะท่านอาจจะเสียเวลาเปล่า
ที่อ่านข้อมูลที่รู้ๆกันอยู่ และผมก็เคยรู้แต่ตอนนี้มันทำให้อุทานออกมาว่า อ๋ออออออ
เพื่อที่จะไม่ต้องมาอุทานอีกจึงเขียนลงใน Blog ดีกว่าจะได้ไม่ต้องมา อ๋อออออ กันอีกครับ :)
ในบทความนี้เป็นเพียงแนวทางแบบคร่าวๆ หวังว่าจะสามารถนำไปประยุกตร์ใช้ได้
รายละเอียดใน code ตัวอย่างจะไม่ละเอียดเท่าไหร่นะครับ มีเพียงแนวทางเท่านั้นครับ
Step 1 สร้าง connection string
ในการพัฒนา WebApplication พึงใช้ web.config เพื่อเก็บค่า connection string
ดังเช่น ตย นี้
<configuration>
<appSettings>
<add key="dsn" value="server=server; uid=user; pwd=password; database=db" />
</appSettings>
</configuration>
ประโยชน์ของมันคือ....เพียงเราอ้างอิง key ที่ชื่อ dsn ก็สะดวกแก่การเชื่อมต่อ database ขึ้น
Step 2 เรียกใช้ key
การเรียก key มาใช้ใน behind code ก็เพียงอ้างจาก method ดัง ตยนี้
string dsn = System.Configuration.ConfigurationSettings.AppSettings["dsn"];
จาก code เป็นการสร้างตัวแปร dsn ขึ้นมาเป็นตัวแปรชนิดข้อความและรับค่ามาจาก key ที่ชื่อว่า dsn
Step 3 สร้าง object connection
จากนั้นสร้าง connection object โดยนำค่าตัวแปร dsn ที่ได้มาระบุลงใน parameter ดังเช่น ตย
SqlConnection conn = new SqlConnection(dsn);
จาก code เป็นการสร้าง object conn ขึ้นมาซึ่งมีการระบุ parameter dsn ลงไปด้วย
Step 4 พึงใช้เวลาในการเปิด ปิด การเชื่อมต่อกับ Database สั้น (หากเป็นไปได้)
และปิดการเชื่อมต่อกับ Database ทุกครั้งเมื่อทำงานเสร็จแล้ว อาจใช้ Try catch เข้ามาช่วยตรวจจับก็ได้
SqlConnection conn = new SqlConnection(dsn);
try
{
//some init depending on conn
conn.Open();
//minimum number of lines of code depending on the open connection
}
finally
{
if (conn.ConnectionState == ConnectionState.Open)
conn.Close();
}
จาก code ที่ส่วนของ finally {.....} จะสั่งให้ยุติการเชื่อมต่อกับ Database
หากพบว่ายังมีการเชื่อมต่ออยู่
...................................................................
จบแล้วครับ หวังว่าจะเป็นประโยชน์กับมือใหม่หัด code (เช่นผม)บ้างนะครับ
Enjoy your coding !!!!
แหล่งข้อมูล http://forums.asp.net
ขอบคุณมากครับที่สนใจ และให้คำแนะนำครับ
ยังไงก็จะพยายามเขียนอีกเรื่อยๆ
ส่วนแบบ Step By Step จะเหมาะกับการลงมือ coding จริงเลย
ผมขอเอาไว้งวดหน้าก็แล้วกันนะครับจะจัดให้ครับ