Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Lỗi trong append query
#1
Mình không chạy được SQL này. Báo lỗi đoạn Select đầu tiên, hix. Các bạn xem hộ.
Trích dẫn:DoCmd.RunSQL "INSERT INTO tblSoDuCongNo (MaTaiKhoan,MaDoiTac,TenDoiTac) VALUES (SELECT TaiKhoanNoPhaiThu AS TaiKhoan, MaDoiTac, TenDoiTac " & _
"FROM tblDanhMucDoiTac WHERE TaiKhoanNoPhaiThu<>""; " & _
"UNION SELECT TaiKhoanNoPhaiTra AS TaiKhoan, MaDoiTac, TenDoiTac " & _
"FROM tblDanhMucDoiTac WHERE TaiKhoanNoPhaiTra<>"");"

Xin cám ơn./.
Chữ ký của darkmoon Xin chào, mình là darkmoon, Tham gia http://thuthuataccess.com/forum từ ngày 06-07 -11.
Reply
Những người đã cảm ơn
#2
Trong VBA, bạn thử đóng ngoặc các String điều kiện là dấu nháy đơn thay vì dấu nháy kép thử xem.

Mã:
DoCmd.RunSQL "INSERT INTO tblSoDuCongNo (MaTaiKhoan,MaDoiTac,TenDoiTac) VALUES (SELECT TaiKhoanNoPhaiThu AS TaiKhoan, MaDoiTac, TenDoiTac " & _
"FROM tblDanhMucDoiTac WHERE TaiKhoanNoPhaiThu<>'' " & _
"UNION SELECT TaiKhoanNoPhaiTra AS TaiKhoan, MaDoiTac, TenDoiTac " & _
"FROM tblDanhMucDoiTac WHERE TaiKhoanNoPhaiTra<>'');"

Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#3
(09-01-12, 04:25 PM)Noname Đã viết: Trong VBA, bạn thử đóng ngoặc các String điều kiện là dấu nháy đơn thay vì dấu nháy kép thử xem.

Mã:
DoCmd.RunSQL "INSERT INTO tblSoDuCongNo (MaTaiKhoan,MaDoiTac,TenDoiTac) VALUES (SELECT TaiKhoanNoPhaiThu AS TaiKhoan, MaDoiTac, TenDoiTac " & _
"FROM tblDanhMucDoiTac WHERE TaiKhoanNoPhaiThu<>'' " & _
"UNION SELECT TaiKhoanNoPhaiTra AS TaiKhoan, MaDoiTac, TenDoiTac " & _
"FROM tblDanhMucDoiTac WHERE TaiKhoanNoPhaiTra<>'');"

Mình cũng thử nhưng vẫn không thể append được. Dù đã thay thế dấu " bằng chr(39). Lỗi hiện lên thông báo đoạn
Trích dẫn:SELECT TaiKhoanNoPhaiThu AS TaiKhoan
Chữ ký của darkmoon Xin chào, mình là darkmoon, Tham gia http://thuthuataccess.com/forum từ ngày 06-07 -11.
Reply
Những người đã cảm ơn
#4
(09-01-12, 04:30 PM)darkmoon Đã viết:
(09-01-12, 04:25 PM)Noname Đã viết: Trong VBA, bạn thử đóng ngoặc các String điều kiện là dấu nháy đơn thay vì dấu nháy kép thử xem.

Mã:
DoCmd.RunSQL "INSERT INTO tblSoDuCongNo (MaTaiKhoan,MaDoiTac,TenDoiTac) VALUES (SELECT TaiKhoanNoPhaiThu AS TaiKhoan, MaDoiTac, TenDoiTac " & _
"FROM tblDanhMucDoiTac WHERE TaiKhoanNoPhaiThu<>'' " & _
"UNION SELECT TaiKhoanNoPhaiTra AS TaiKhoan, MaDoiTac, TenDoiTac " & _
"FROM tblDanhMucDoiTac WHERE TaiKhoanNoPhaiTra<>'');"

Mình cũng thử nhưng vẫn không thể append được. Dù đã thay thế dấu " bằng chr(39). Lỗi hiện lên thông báo đoạn
Trích dẫn:SELECT TaiKhoanNoPhaiThu AS TaiKhoan
Bạn up file lên xem thử, Giữ nguyên hiện trường chỗ sai để mình xem luôn hén
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#5
Run-time error '3075'
Syntax error in query expression 'SELECT TaiKhoanNoPhaiThu AS TaiKhoan'
Chữ ký của darkmoon Xin chào, mình là darkmoon, Tham gia http://thuthuataccess.com/forum từ ngày 06-07 -11.
Reply
Những người đã cảm ơn
#6
Gửi file lên đi bạn!
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#7
Nếu tạo union query riêng rồi append vào table thì lại không vấn đề gì.

http://www.mediafire.com/?ghube7znf2k0154
Chữ ký của darkmoon Xin chào, mình là darkmoon, Tham gia http://thuthuataccess.com/forum từ ngày 06-07 -11.
Reply
Những người đã cảm ơn haquocquan
#8
Mình xem qua rồi. Đối tượng table, query không trả về 1 mảng hay một giá trị, vì vậy bạn không dùng tham số Values trong câu trên.
Đồng thời, hàm union là sinh ra 1 table mới mà Access nó không hiểu được cấu trúc table này để insert vào table tblSoDuCongNo

Để tránh nhập nhằng, bạn nên tách câu query trên thành 2 câu query độc lập như sau:
Mã:
Dim sqlN, sql1, sql2 As String
DoCmd.SetWarnings False

sqlN = "INSERT INTO tblSoDuCongNo (MaTaiKhoan,MaDoiTac,TenDoiTac) "
DoCmd.RunSQL sqlN & "SELECT TaiKhoanNoPhaiThu, MaDoiTac, TenDoiTac FROM tblDanhMucDoiTac WHERE TaiKhoanNoPhaiThu<>''"
DoCmd.RunSQL sqlN & "SELECT TaiKhoanNoPhaiTra, MaDoiTac, TenDoiTac FROM tblDanhMucDoiTac WHERE TaiKhoanNoPhaiTra<>''"
DoCmd.SetWarnings True
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn haquocquan , bomnhauag , darkmoon
#9
Hoặc bạn dùng đoạn code này:
Mã:
DoCmd.RunSQL "INSERT INTO tblSoDuCongNo (MaTaiKhoan,MaDoiTac,TenDoiTac)" & _
" SELECT query1.MaTaiKhoan, query1.MaDoiTac, query1.TenDoiTac" & _
" FROM  ([SELECT tblDanhMucDoiTac.TaiKhoanNoPhaiThu AS MaTaiKhoan, MaDoiTac, TenDoiTac" & _
" FROM tblDanhMucDoiTac WHERE tblDanhMucDoiTac.TaiKhoanNoPhaiThu<>''" & _
" UNION SELECT tblDanhMucDoiTac.TaiKhoanNoPhaiTra AS MaTaiKhoan, MaDoiTac, TenDoiTac" & _
" FROM tblDanhMucDoiTac WHERE tblDanhMucDoiTac.TaiKhoanNoPhaiTra<>'']. as query1)"
Chữ ký của haquocquan Guest, you are welcome!
ღღღღღTài sản của haquocquan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn darkmoon


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Cách lọc chuỗi trong query liaemars 1 26 6 Giờ trước
Bài mới nhất: ongke0711
  ACCESS CÓ HÀM TƯƠNG TỰ SUMIFS TRONG EXCEL KHÔNG? hoaducvn90 3 84 18-06-18, 11:00 AM
Bài mới nhất: ongke0711
  [Hỏi] Tạo query giống excel và lỗi tự select * toidjtjmtoi 6 219 17-06-18, 09:49 PM
Bài mới nhất: toidjtjmtoi
  Thêm số thứ tự trong Query Noname 14 8,953 01-06-18, 05:52 PM
Bài mới nhất: MTNQ
  Thiết lập query Nhập Xuất Tồn theo lệnh ChiMai 1 118 07-05-18, 08:38 PM
Bài mới nhất: ChiMai

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ| PMA Nha Trang| Gỗ Acrylic Không Đường Line