*Tel: 0-2944-0009, 0-2988-9369-70   *Hotline: 086 322 2423   *Fax: 0-2944-2499        

Technique : เราสามารถสำรองข้อมูลได้โดยใช้ Trigger ใน SQL Server

สำรองข้อมูลได้โดยใช้ Trigger ใน SQL Server

เราสามารถใช้ Trigger ในการสำรองข้อมูลลูกค้า
โดยทุกครั้งที่มีการ แก้ไขหรือเพิ่มรายการลูกค้าในตาราง Customer
ให้มีการ  Backup ข้อมูล ไว้ที่ตาราง  Customer_BackUp ด้วย

Trigger ที่เราจะเขียนกัน มี Concept ดังนี้
ถ้ามีการ Update หรือ Insert ข้อมูลลงในตาราง Custermer ให้
1.ตรวจสอบข้อมูลในตาราง  Customer_Backup
2.ถ้ายังไม่มี ข้อมูลดังกล่าวในตาราง  Customer_Backup ให้ Insert ข้อมูล
3.ถ้ามีข้อมูลแล้วใน Customer_Backup แล้ว ให้ Update ข้อมูล

เมื่อได้ Concept แล้ว มาเขียน Trigger ของ SQL Server ได้ดังนี้

IF EXISTS (SELECT * FROM Customer_Backup WHERE Citizen_ID='3240900120899')
UPDATE Customer_Backup SET (FullName = 'Rawiwan Jinda') WHERE Citizen_ID='3240900120899'
ELSE
INSERT INTO Customer_Backup(Citizen_ID,FullName) VALUES ('3240900120899','Rawiwan Jinda')

หรือเขียนสั่งให้ตรวจสอบจำนวน Record ที่สามารถ Update ได้ (@@ROWCOUNT)
ถ้ายังไม่มีการ Update ให้เพิ่มข้อมูลเข้าไป ซึ่งสามารถเขียนคำสั่งได้ดังนี้

UPDATE Customer_Backup SET (FullName = 'Rawiwan Jinda') WHERE Citizen_ID='3240900120899'
IF @@ROWCOUNT=0
INSERT INTO Customer_Backup(Citizen_ID,FullName) VALUES ('3240900120899','Rawiwan Jinda')