korakot_titla

Sun 23 Jul 2006 12:01:12
Sun 23 Jul 2006 12:01:12
ตัวอย่งโคดนะครับ
myTime=FormatDateTime(Time, 4)
show=Csng(11.48)
myshow=CStr(show)
response.Write myshow
if myTime=myshow then
response.Write "Delect"
conn.Execute "DELETE FROM tblQuota where idcard='"&myid&"'"
conn.Execute "DELETE FROM TblStuQuota where idcard='"&myid&"'"
set conn=nothing
end if
ตามโคดด้านบนถ้าหากเวลาเท่ากันจะไม่สามารถทำการลบได้นะครับ
คืออยากจะเช็คว่าเวลาที่เรากำหนดเช่น เที่ยงคืน ให้ทำการลบข้อมูลได้เลยนะครับ หรือว่าผมต้องไปแก้ไขตรงฐานข้อมูล(Access) รบกวนหน่อยนะครับ
ขอบคุณครับ
ถ้าเป็นไปได้ก็อาจจะเขียนโค๊ดลบธรรมดาครับ แล้วก็สั่ง Schedule task ให้รัน script นี้ในเวลาที่กำหนดเอาครับ
korakot_titla

Thu 27 Jul 2006 08:56:24
Thu 27 Jul 2006 08:56:24
ไม่ค่อยจะเค้าใจเลยครับรบกวนกรุณาช่วยกตัวอย่างหน่อยได้มั้ยครับ
ขอบคุณครับ
ปัญหาของการทำงานของ Server-Side Script
คือจะทำงานเมื่อมีการเรียกใช้งานเท่านั้น ซึ่งถ้าคุณเช็คเวลาไว้ในตัว
Script สมมติว่าให้เช็คว่า ทุกเที่ยงวันให้ทำการลบ จะได้ logic ประมาณว่า
if DateTime.Now >= 12.00
DoDelete()
ซึ่งจะลบเมื่อมีคนมาเรียกใช้งาน Script นี้ในช่วงเวลาหลังจากเที่ยงวันถึงจะทำการลบข้อมูล ปัญหาคือ
ถ้าไม่มีคนเรียกใช้เลยจนกระทั่ง 20.00 ล่ะระบบของคุณจะมีผลกระทบหรือไม่ ถ้าไม่มีปัญหาอะไรกับระบบโดยรวมก็ไม่เป็นไรครับ แต่ถ้าจะทำให้ระบบมีปัญหาผมจึงแนะว่ามีอีกวิธีว่าให้ใช้ Schedule Task ครับตั้งเวลาไว้ว่าทุกเที่ยงวันให้ไปเรียกใช้งาน Script เพื่อลบ โดยใน Script ก็ไม่ต้องมีการเช็คเวลาเนื่องจาก Schedule Task จะทำงานตรงตามเวลาที่กำหนดอยู่แล้วครับ
Schedule Task จะเป็น Service ที่มีให้บริการอยู่แล้วใน Windows Based ครับ
if DateTime.Now >= 12.00
DoDelete()
ซึ่งจะลบเมื่อมีคนมาเรียกใช้งาน Script นี้ในช่วงเวลาหลังจากเที่ยงวันถึงจะทำการลบข้อมูล ปัญหาคือ
ถ้าไม่มีคนเรียกใช้เลยจนกระทั่ง 20.00 ล่ะระบบของคุณจะมีผลกระทบหรือไม่ ถ้าไม่มีปัญหาอะไรกับระบบโดยรวมก็ไม่เป็นไรครับ แต่ถ้าจะทำให้ระบบมีปัญหาผมจึงแนะว่ามีอีกวิธีว่าให้ใช้ Schedule Task ครับตั้งเวลาไว้ว่าทุกเที่ยงวันให้ไปเรียกใช้งาน Script เพื่อลบ โดยใน Script ก็ไม่ต้องมีการเช็คเวลาเนื่องจาก Schedule Task จะทำงานตรงตามเวลาที่กำหนดอยู่แล้วครับ
Schedule Task จะเป็น Service ที่มีให้บริการอยู่แล้วใน Windows Based ครับ

















