hỏi lệnh xóa trong foxpro (3 người xem)

  • Thread starter Thread starter boyvt
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

boyvt

Thành viên mới
Tham gia
9/2/12
Bài viết
6
Được thích
0
Trong foxpro, ví dụ mình có bảng dữ liệu như sau: (mình lấy đỡ hình bên excel làm mẫu nhé)

ZA010244776.gif


Bây giờ mình muốn xóa hàng số 8,9,10. Nếu mình dùng Ctrl+T thì foxpro nó chỉ bôi đen và vẫn hiển thị là 10 record. Mình muốn dùng lệnh xóa sao cho sau khi xóa thì số record sẽ giảm theo.

Cảm ơn.
 
Trong foxpro, ví dụ mình có bảng dữ liệu như sau: (mình lấy đỡ hình bên excel làm mẫu nhé)

ZA010244776.gif


Bây giờ mình muốn xóa hàng số 8,9,10. Nếu mình dùng Ctrl+T thì foxpro nó chỉ bôi đen và vẫn hiển thị là 10 record. Mình muốn dùng lệnh xóa sao cho sau khi xóa thì số record sẽ giảm theo.

Cảm ơn.
Tôi không rành lắm về Foxpro nhưng hình như sau thao tác Ctrl+T thì cần phải thêm lệnh Pack nữa mới xóa các record đã chọn.
 
Fox chỉ xóa tạm thời là có mục đích, đó là phòng trường hợp lỡ xóa và muốn phục hồi. Pack là xóa vĩnh viễn những mục đeã xóa tạm.
Nếu muốn không nhìn thấy các record xóa tạm thì thêm for not deleted() vào câu lệnh browse, xóa xong nó ẩn luôn. Còn muốn xóa hẳn thì phải pack, nhưng không lẽ pack liên tục?

Thông thường sau khi hoàn thiện, báo cáo đầy đủ, đúng, mới pack 1 lần. Nếu sai thì còn có thể tìm và phục hồi những record xóa nhầm trước đó.
 
nếu muốn ẩn những record đã đánh dấu xoá, thì dùng lệnh
SET DELETE ON
ngược lại muốn hiện thì
SET DELETE OFF
 
Bạn thực hiện câu lệnh sau

DELETE FROM D:/CD0113.DBF WHERE Stt = 13
PACK
SCAN
LOCATE FOR Stt <> RECNO()
REPLACE Stt WITH RECNO()
ENDSCAN
MESSAGEBOX('XOA DU LIEU THANH CONG', 16, 'Thong bao:')
 
Web KT

Bài viết mới nhất

Back
Top Bottom