คำสั่ง Transaction

Download Report

Transcript คำสั่ง Transaction

1

สร ้างตารางโดยไปที่ Database explorer > table
> add new table
◦ กาหนดให ้สร ้างตาราง UserPic เก็บข ้อมูลรูปภาพของ
ผูใ้ ช ้งาน
2


่
ในหน้า Register.aspx เพิมคอนโทรล
FileUpload สาหร ับให ้
ผูใ้ ช ้เลือกรูปภาพของตนเอง
้ insert ข ้อมูลต่างๆ
การ insert ข ้อมูลสมัครสมาชิกในหน้านี จะ
ลงไปพร ้อมกัน 2 ตาราง คือ ตาราง User (insert ข ้อมูลทุกตัว
ยกเว ้น picture)และตาราง UserPic (insert เฉพาะ
username กับ picture) เป็ นการ insert ข ้อมูลแบบ
การ insert ข ้อมูลแบบ
Transaction
Transaction นี ้ ควรจ
insert ตารางใดก่อน?
3
่ นใช้งาน SqlTransaction
ประกาศการเริมต้
SqlTransaction transac = dbcon.conn.BeginTransaction();
่ องการใช้งานแบบ transaction
ประกาศ SqlCommand ทีต้
SqlCommand cmd = new SqlCommand();
cmd.Transaction = transac;
่
้
กาหนดค่าให้ก ับ SqlCommand และสังประมวลผล
SqlCommand นัน
้
่ หลาย Command)
(ตรงนี สามารถสั
งได้
cmd.Connection = dbcon.conn;
่ องการ
cmd.CommandText = “…….คาสัง่ sql ทีต้
ประมวลผล…….”;
cmd.ExecuteNonQuery();
่
้
หากทาคาสัง่ SqlCommand ทีระบุไว้
ขา้ งต้นสาเร็จทังหมด
ก็จะยืนยันการ
่ งหมดนั
้
้
กระทาคาสังทั
น
transac.Commit();
4

แก ้ไขโค ้ดปุ่ ม Register ในหน้า Register.aspx โดยให ้
้
insert ข ้อมูล transaction พร ้อมกันทังสองตาราง
5
6
่ าสังด้
่ านล่างนี ลงไปในโค้
้
เพิมค
ดของปุ่ ม register ใน
ส่วนของ try
่ ใ้ ช ้ต ้องการอัพโหลดจริง
//เช็คก่อนว่ามีไฟล ์ทีผู
if (FileUpload1.HasFile == true) {
่
่ client
//ดึงชือไฟล
์จากเครือง
string fn =
System.IO.Path.GetFileName(FileUpload1.PostedFile
.FileName);
่
//กาหนดว่าต ้องการวางไว ้ทีพาธใดบน
server
string savelocation = Server.MapPath("Image")
+ "\\" + fn;
//Save ไฟล ์นั้นมาวางไว ้บน server ตามตาแหน่ งที่
ต ้องการ

7



FileUpload1.HasFile //ตรวจสอบว่ามีไฟล ์อยู่หรือไม่
FileUpload1.PostedFile.ContentLength; //ตรวจสอบว่า
ไฟล ์มีขนาดเท่าใด(byte)
FileUpload1.PostedFile.ContentType; //ตรวจสอบว่าเป็ น
ไฟล ์ประเภทใด (eg. jpg,bmp,doc)
8


่ ้องการ(หน้าใดก็ได ้)ขึนมา
้
เลือกหน้าเว็บของผู ้ใช ้ทีต
1 หน้า
เช่น admin.aspx
่ textbox สาหร ับการแก ้ไขรหัสผ่านลงไป ดังรูป (อาจมี
เพิม
การให ้ยืนยันรหัสผ่านโดยตรวจสอบคูก
่ บั validation
control)
9
protected void btnSubmit_Click(object sender,
EventArgs e) {
try {
่
// เขียนคาสังการ
update password ลงใน
บริเวณนี ้
Label1.Text = “Update ข ้อมูลสาเร็จ" ;
}
catch (Exception e1) {
Label1.Text = “Update ข ้อมูลไม่สาเร็จ" +
e1.ToString();
}
}
10