ใช้คำสั่ง insert into แล้ว error
กระทู้เก่าบอร์ด อ.Yeadram

 1,204   3
URL.หัวข้อ / URL
ใช้คำสั่ง insert into แล้ว error

ผมใช้คำสั่ง INSERT INTO จากตาราง student ไปยัง ตาราง student_exit
เฉพาะเงื่อนไข WHERE studstatus = '2'
ปรากฎว่ามันเป็นสีเหลืองที่ DoCmd.RunSQL strSQL แถวๆบรรทัดสุดท้ายครับ
ต้องการถามว่า
1. จะแก้ไขตรงไหนครับ ทั้งๆที่ ลองใช้ INSERT INTO สัก 6 ฟิลด์ สามารถทำได้ไม่มีปัญหา
2. มีวิธีการที่จะนำ เรคคอร์ดที่ตรงกับ ฟิลด์ เงื่อนไข WHERE เข้าไปในตาราง โดยไม่เขียน โค๊ดยาวขนาดนี้ไหมครับ

Private Sub Command218_Click()
        Dim strSQL As String
        DoCmd.SetWarnings False
        strSQL = "INSERT INTO student_exit(id_student, pin, prifix, Frist_name, Last_name, Nickname, old_name, prefix_eng, firstn_eng, Lastn_eng, disease, oldschool, Province_old, birthday, pfl_name, sex, yearths, Level, room, class, id_room, ordinal, studstatus, " & _
        "room_1, color, fater_name, jobF, Tel_F, mother_name, jobM, Tel_M, id_status_FM, Ban, p_no, p_group, p_street, p_tumbol, p_amphur, p_province, zip_code, telephone, Note, picture_1, Myfriend, class_MF, adviser1, tel_advi1, adviser2, tel_advi2, adviser3, " & _
        "tel_advi3, visit_home, Thai, Math, Sci, Soci, Heal, Art, Occ, Eng, Gpa) " & _
        "SELECT id_student, pin, prifix, Frist_name, Last_name, Nickname, old_name, prefix_eng, firstn_eng, Lastn_eng, disease, oldschool, Province_old, birthday, pfl_name, sex, yearths, Level, room, class, id_room, ordinal, studstatus, " & _
        "room_1, color, fater_name, jobF, Tel_F, mother_name, jobM, Tel_M, id_status_FM, Ban, p_no, p_group, p_street, p_tumbol, p_amphur, p_province, zip_code, telephone, Note, picture_1, Myfriend, class_MF, adviser1, tel_advi1, adviser2, tel_advi2, adviser3, " & _
        "tel_advi3, visit_home, Thai, Math, Sci, Soci, Heal, Art, Occ, Eng, Gpa FROM student WHERE studstatus = '2';"
        DoCmd.RunSQL strSQL
        DoCmd.SetWarnings True
End Sub

3 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R21454
ได้แล้วครับ ลองผิดลองถูกไปมา
Private Sub Command218_Click()
        Dim strSQL As String
        DoCmd.SetWarnings False
        strSQL = "INSERT INTO student_exit SELECT * FROM student WHERE studstatus = '2';"
        DoCmd.RunSQL strSQL
        DoCmd.SetWarnings True
End Sub
เป็นการ นำข้อมูลทุกฟิลด์ จากตาราง student ไปเก็บไว้ในตาราง student_exit โดยมีเงื่อนไขว่า ฟิลด์ studstatus = '2'
2 @R23719
ขอสอบถามหน่อยครับ
ผมสร้างฟอร์มเพื่อกรอกข้อมูล แล้วต้องการ insert เข้าไปใน table ผมเลยเขียนโค้ดแบบนี้ถูกเปล่าครับ เพราะพอรันไปมันขึ้น debug ที่ DoCmd.RunSQL strSQL
Dim strSQL As String
strSQL = " INSERT INTO bill (part number,part name,size,havenumber,used)values('" & Text12 & "','" & Text14 & "','" & Text17 & "','" & Text19 & "','" & Text21 & "');"
DoCmd.RunSQL strSQL
3 @R23727
ชื่อฟิลด์มีช่องว่าง เช่น part number ก็ต้องครอบด้วยเครื่องหมาย bracket เป็น [part number] และก่อนและหลังคำ values ให้มีช่องว่างสักหน่อยครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2246s