Chủ đề: Lỗi lọc dữ liệu
-
10-21-2010, 04:15 AM #1Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 0
Lỗi lọc dữ liệu
Ai đã từng gặp tình huống này thì giúp mình với. Mình sử dụng database SQL Server rồi link qua MS Access 2000. Nếu sử dụng font VNI- thì find và filter bình thường, nhưng nếu sử dụng font Unicode thì find bình thường, nhưng lọc không thấy gì.
Ví dụ, mình lưu giá trị "Chả Lụa Chay" trong field TenHH (kiểu nvarchar). Nếu "Chả Lụa Chay" là font VNI thì OK còn "Chả Lụa Chay" là font Unicode thì sử dụng chức năng filter for sẽ không có kết quả gì hết
Nếu copy nguyên chuỗi ấy dán vào table Access thì filter lại OK
Hết biết luôn. :runcamcap:View more random threads:
- Cho ngày tháng khi ENTER qua
- Giúp mình vấn đề 2 người cùng sửa dữ liệu trên 1 bản ghi qua mạng Lan
- giúp em sử dụng đoạn code này với!!!
- làm cách nào để đưa nhiều file excel vào cùng 1 table
- ACCESS: tìm kiếm và xóa file bằng VBA!
- Tao dấu / khi đánh ngày tháng năm
- Không chạy được query trong ACCESS!
- Xóa dữ liệu ở 2 bảng cùng lúc
- Mong các bác giúp đỡ
- Đăng nhập sai 5 lần chờ 15 phút
-
12-16-2010, 08:18 PM #2Junior Member
- Ngày tham gia
- Nov 2015
- Bài viết
- 0
Ðề: Lỗi lọc dữ liệu
Nếu không link mà import table từ SQL Server 2000 qua thì mọi việc đều bình thường. Hoặc link table qua rồi chép các record trong table đó sang một table của Access có cùng cấu trúc thì các thao tác trên table của Access này cũng ok. Chuyện này chỉ xảy ra đối với các bảng mã Unicode (tổ hợp, dựng sẵn, CP 1258 đều bị). Tôi đã thử SQL Server 2005 và MS Access 2003, vấn đề cũng y chang. Ngay cả đặt một điều kiện lọc đơn giản trong query như TenHH Like "*Chả*" cũng trả về kết quả rỗng.
Có vấn đề gì trong việc SQL Server "hợp tác" với MS Access mà các table SQL Server dùng các font Unicode?
Ai đã từng gặp chuyện này thì chia sẻ với tôi với!
Đa tạ!
-
12-17-2010, 01:29 AM #3Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 2
Ðề: Lỗi lọc dữ liệu
Với SQL Server, bạn cần lưu ý là nên dùng chuẩn ANSI 92 cho syntax.
Tiếp theo, với kiểu nvarchar, khi tham chiếu chuỗi, bạn nên có ký tự N trước chuỗi. VD: N'Chả giò chay'. Lúc này SQL Server hiểu nó là chuổi kiểu nvarchar.
Tiếp nữa là nếu bạn gõ dấu trong VBA của Access thì Unicode không gõ được đâu. Như vậy, có thể bạn dùng VNI để thể hiện dấu. Nếu đúng thế thì cái chuỗi so của bạn nhập trong VBA là VNI rồi, khi filter thì sẽ không thấy được, vì bên SQL Server lưu theo Unicode.
Hoặc ở SQL Server bạn tạo database mà dùng colaboration là UTF-8 thì cũng sẽ gặp trường hợp tương tự.
-
12-17-2010, 12:26 PM #4Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 0
Ðề: Lỗi lọc dữ liệu
Cám ơn bạn đã trả lời! Tôi không rành về SQL Server. Tôi có làm 1 ứng dụng nhỏ phục vụ cho công việc. Lúc đầu làm thì file back-end và front-end đều là MS Access 2000 cả. Nếu tại 1 thời điểm chỉ có 1 người dùng thì tốc độ bình thường, nhưng nếu có 2 người trở lên dùng đồng thời thì chương trình bắt đầu... lết. Tôi đã thử thay thế back-end bằng SQL Server thì tốc độ khi nhiều người dùng đồng thời rất là ô kê.
Tôi thích unicode vì xài font VNI thấy nó xấu quá, không gọn gàng tí nào, nhưng lại gặp phải vấn đề trên.
Lúc tạo database SQL Server, tôi chọn Collation mặc định của SQL Server (SQL_Latin1_General_CP1_CI_AS)
Khi lọc dữ liệu, tôi không viết trực tiếp chuỗi điều kiện lọc trong VBA mà sử dụng textbox chứa chuỗi unicode cần lọc, dạng như:
FormA.Filter = "TenHH LIKE '*" & FormA.text1 & "*'"
FormA.FilterOn = True
Còn dùng chữ N để SQL Server hiểu là chuỗi unicode thì tôi không biết "nhét" nó vô đâu trong câu lệnh lọc bên trên nữa.
Nhưng vấn đề là ngay cả đặt điều kiện lọc trong query hay sử dụng chức năng lọc chuẩn của MS Access thì đều không xong (cỏ vẻ như nó lọc được một số chữ có dấu, nhưng đa số chữ có dấu khác thì không được). Tôi cẩn thận không gõ tên hàng cần lọc mà tôi copy tên hàng trong table cũng không lọc được.
-
12-18-2010, 05:51 AM #5Silver member
- Ngày tham gia
- Sep 2015
- Bài viết
- 140
Ðề: Lỗi lọc dữ liệu
Bạn có thể thử: FormA.Filter = "TenHH LIKE N'*" & FormA.text1 & "*'"
-
12-21-2010, 03:16 AM #6Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 0
Ðề: Lỗi lọc dữ liệu
Nó báo lỗi: "Run-time error '2448'. You can't assign a value to this object".
-
12-21-2010, 05:32 PM #7Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 0
Ðề: Lỗi lọc dữ liệu
Có nhiều nguyên nhân khi xảy ra lỗi này.
Nguyên nhân thứ nhất:
Có khả năng cái text1 của bạn có assign đến một field của table RecordSource
Nguyên nhân thứ hai:
Cái field đó không tồn tại trong table
Vì không rõ bạn thiết kế như thế nào nên cũng khó nói chi tiết được
-
12-27-2010, 04:15 AM #8Silver member
- Ngày tham gia
- Feb 2016
- Bài viết
- 0
Ðề: Lỗi lọc dữ liệu
Theo tôi thì không phải cú pháp có vấn đề mà việc phối hợp giữa SQL Server và MS Access có vấn đề. Không tin bạn thử tạo 1 database SQL Server (lưu các chuỗi unicode trong table) rồi link qua MS Access; Thử tạo 1 query để lọc các chuỗi unicode đó thử, hoặc thử sử dụng menu lọc chuẩn của MS Access thử thì sẽ biết.
Nó lọc được 1 số chữ có dấu, nhưng đa số các chữ có dấu đều không lọc được.
-
12-27-2010, 04:29 PM #9Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 0
Ðề: Lỗi lọc dữ liệu
@lttruc862:
Tôi đã áp dụng Access Project để "kiếm cơm" nhiều rồi. Tất nhiên trên SQL Server, tôi đều lưu dưới dạng nvarchar cho các dữ liệu kiểu chuỗi.
Việc lọc, tìm kiếm dữ liệu chẳng có gì là "rắc rối". Không riêng gì tiếng Việt có dấu, ngay cả tìm bằng tiếng Hoa cũng chẳng vấn đề gì (tôi viết nhiều cho các công ty Đài loan ở Bình dương).
Vì không rõ bạn thiết kế chương trình của bạn ra sao nên tôi không thể hiểu đúng cái rắc rối mà bạn gặp phải, tôi chỉ đề xuất một số ý kiến để bạn xem thử. Nếu vẫn không được thì tôi cũng "pó tay", nhờ các anh em khác hỗ trợ vậy.
-
07-07-2011, 05:21 PM #10Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 4
Ðề: Lỗi lọc dữ liệu
Lỗi lọc chuỗi unicode khi link từ sql server 2000 sang ms access 2000. Anh Phatnq2002 và mọi người xem thử nhé:
File unicode.exe record lại các thao tác, không phải virus đâu.
unicode.exe
Đa tạ!
Địa chỉ cung cấp mẫu lăng mộ đá khu lăng mộ uy tín chất lượng Đá mỹ nghệ Tài Tuệ là đơn vị hàng đầu trong lĩnh vực điêu khắc chế tác các sản phẩm, công trình tâm linh bằng đá tại làng đá truyền...
Địa chỉ cung cấp mẫu lăng mộ đá khu lăng mộ uy tín chất lượng năm 2024