กระทู้เก่าบอร์ด อ.Yeadram
1,281 2
URL.หัวข้อ /
URL
ลบข้อมูลที่ติ๊กถูกออก
ผมมีปัญหาเรื่องการลบข้อมูลของจากฐานข้อมูลครับ
คือตอนนี้ผมทำโปรแกรมแล้วประมาณหนึ่ง แต่ติดตรงที่เมื่อเราติ๊กเครื่องถูกแล้วต้องการทำปุ่มเพื่อให้ลบข้อมููลออกจากฐานข้อมูลด้วย ต้องทำแบบไหนดีครับ
ซึ่งผมส่งตัวอย่างโปรแกรมไปที่ Gmail นี้ครับ
accboard@gmail.com pass: accgmail
ขอบคุณครับ
คือตอนนี้ผมทำโปรแกรมแล้วประมาณหนึ่ง แต่ติดตรงที่เมื่อเราติ๊กเครื่องถูกแล้วต้องการทำปุ่มเพื่อให้ลบข้อมููลออกจากฐานข้อมูลด้วย ต้องทำแบบไหนดีครับ
ซึ่งผมส่งตัวอย่างโปรแกรมไปที่ Gmail นี้ครับ
accboard@gmail.com pass: accgmail
ขอบคุณครับ
2 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R10480
ขอบคุณ U&ME ครับสำหรับคำตอบ แต่ผมยอมรับไม่เก่งเรื่องคำสั่งที่ทำให้ดู ที่ผมทำโปรแกรมได้บางส่วน คือใช้ดูตัวอย่างที่เขาทำโปรแกรมไว้แล้ว แล้วเอามาแกะดูที่ละคำสั่งดู ผมรบกวนช่วยทำเป็นตัวอย่างโปรแกรมให้ดูหรือมีตัวอย่างโปรแกรมที่ทำไว้แล้วก็ได้ครับ
ส่งไปที่ accboard@gmail.com Password : accgmail
ส่งไปที่ accboard@gmail.com Password : accgmail
Time: 0.3433s
Private Function buildSQL(strSQL As String, strPattern As String, col As Collection, i As Integer) As String
If i = 1 Then
buildSQL = strSQL & "'" & strPattern & "'" & " & '" & colCheckBox.Item(i) & "'"
Else
buildSQL = buildSQL & strSQL & "'" & strPattern & "'" & " & '" & colCheckBox.Item(i) & "' OR "
Debug.Print buildSQL
buildSQL = buildSQL(buildSQL, "*", col, (i - 1))
End If
End Function
และคำสั่งสำหรับปุ่มลบข้อมูล
Private Sub Command46_Click()
Dim i As Integer
Dim strSQL As String
Dim strPattern As String
Dim tmpQuery As QueryDef
strPattern = "??????"
strSQL = "DELETE del_no FROM Q_ORDER_SELECT WHERE del_no Like "
strSQL = buildSQL(strSQL, "*", colCheckBox, colCheckBox.Count)
With CurrentDb
Set tmpQuery = .CreateQueryDef("delQuery", strSQL)
tmpQuery.Execute
.QueryDefs.Delete tmpQuery.Name
End With
Set colCheckBox = Nothing
End Sub
*** หมายเหตุ
รูปแบบเงื่อนไขการลบไม่แน่นอนจึงไม่สามารถระบุว่าจะใช้ Pattern '??????' หรือ '*' ถ้านัยสำคัญของการลบคือเลขท้าย 5 ตัว ก็อาจใช้แพทเทิร์น '*' ได้ แต่ถ้าเกิดว่า ขณะที่กำลังเก็บค่า Collection นั้น มีเลขที่เป็นจำนวน 0xxxx
เลขที่เก็บใน Collection จะมีแค่ 4 หลัก ผลกระทบก็คือ ถ้ามีข้อมูล 14443 และ 04443 ซึ่งค่าใน Collection เท่ากับ 14443, 4443 ถ้าใช้แพทเทิร์น '??????' & '14443' เรคคอร์ดจะถูกลบเพียงเรคคอร์ดเดียว แต่ถ้าใช้แพทเทิร์น '*' & '4443' เรคคอร์ดจะถูกลบออกไป 2