• Lỗi "Numeric field overflow"
  • RE: Lỗi "Numeric field overflow"

    Noname > 20-04-12, 10:17 AM

    Có một cách thế này, bạn tạo 1 record trên file Excel có đầy đủ dữ liệu. Lưu đâu đó.
    Mỗi khi run code, bạn chèn record này vào dòng thứ 2 file excel(dòng đầu là title)
    Sau khi import,
    bạn xóa bỏ dòng này.

    Mách: Bạn có thể đặt một khóa cho dòng này, sau đó, mỗi khi run importxong, bạn cho chạy query delete mỗi điều kiện dòng đã chèn thôi!

    Việc link table không có giải pháp nào hay cho bạn, Nhưng nó là tất yếu.
    bạn có thể cải thiện bằng cách dùng sql server thay cho file Access chứa dữ liệu. Liên kết qua ODBC.

    Các query lớn bạn thay thế bằng các view và liên kết trở lại Access. Như vậy, việc tổng hợp dữ liệu không nằm ở client mà nằm ở server. Và đường truyền chỉ gánh mỗi những gì bạn select thôi! Cải thiện cũng đáng kể.
    Ngoài ra, việc đặt khóa và các field index cũng giúp cho select nhanh hơn chút đỉnh (cũng làm data phình to hơn :P )
  • RE: Lỗi "Numeric field overflow"

    kagetsu > 20-04-12, 10:45 AM

    Ah, mình lại ko nghĩ ra cách chèn record vào file excel, như vậy khi biết lỗi phát sinh ở cột Refs thậm chí có thể chèn dữ liệu vào ô thứ 2 của cột này -> import -> update lại. Cũng là 1 cách hay. Thank bạn đã góp ý cho mình.

    Nếu công ty mình cấp cho SQL Server mình sớm đã dùng rồi, nếu xin được mình đã xin luôn cả .Net để viết cho sướng laughing Về việc đánh chỉ mục mình cũng đã create index ở 1 số trường cần thiết rồi. Tuy nhiên mình nghĩ truy vấn chạy nhanh chậm cũng chịu ảnh hưởng từ máy chứa file data nữa, mình chuyển data sang 1 máy khác thấy cũng nhanh hơn đôi chút so với máy cũ.
  • RE: Lỗi "Numeric field overflow"

    kagetsu > 20-04-12, 04:17 PM

    Còn 1 thắc mắc nữa, bạn cho mình hỏi. Một số máy ở cty mình các field text có những ô vuông, mình nghĩ là do ký tự đặc biệt chr(13) hay chr(10) nhưng một số máy khác ko bị thế. Tại sao vậy?