10/10/2018, 11:08
Hỏi về hàm chuyển từ chữ có dấu sang chữ không dấu trong sqlserver 2000
Mình đang lập trình trang web bằng ngôn ngữ asp.net(2005) sử dung csdl sqlserver 2000. Trong web này có chức năng tìm kiếm. Phần tìm kiếm bình thường(dùng làm like)thì mình đã làm được rồi.
Nhưng ở đây mình muốn làm nút tìm mà khi người dùng nhập vào chữ có dấu hay chữ không dấu đều tìm được(giống chức năng tìm kiếm của google)
vd: Nhập vào (vo tuan hai) có thể tìm được cả (vo tuan hai) hoặc (võ tuấn hải )
Mình đã nghĩ ra cách
- Trong csdl mình tạo thêm một cột ten_khong_dau để lưu tên không dấu
- Trong phần admin của web khi người quảng trị nhập vào text tên(ten_co_dau ) thì mình dùng câu lệnh sql cho nhập nội dung text này vào cột ten_co_dau rồi dùng câu lệnh khác để chuyển tất cả nội dung text có dấu này sang không dấu rồi nhập vào cột ten_khong_dau.
- Sau đó mình dùng hàm like cho cả hai cột này là có thể tìm vừa có dấu vừa không dấu
- Nhưng mình tìm mãi mà không thể nào tìm thấy được hàm nào có thể chuyển từ chử có dấu sang chử không dấu cả
Mong các bạn giúp đở.
Nhưng ở đây mình muốn làm nút tìm mà khi người dùng nhập vào chữ có dấu hay chữ không dấu đều tìm được(giống chức năng tìm kiếm của google)
vd: Nhập vào (vo tuan hai) có thể tìm được cả (vo tuan hai) hoặc (võ tuấn hải )
Mình đã nghĩ ra cách
- Trong csdl mình tạo thêm một cột ten_khong_dau để lưu tên không dấu
- Trong phần admin của web khi người quảng trị nhập vào text tên(ten_co_dau ) thì mình dùng câu lệnh sql cho nhập nội dung text này vào cột ten_co_dau rồi dùng câu lệnh khác để chuyển tất cả nội dung text có dấu này sang không dấu rồi nhập vào cột ten_khong_dau.
- Sau đó mình dùng hàm like cho cả hai cột này là có thể tìm vừa có dấu vừa không dấu
- Nhưng mình tìm mãi mà không thể nào tìm thấy được hàm nào có thể chuyển từ chử có dấu sang chử không dấu cả
Mong các bạn giúp đở.
Bài liên quan
bộ SQLSERVER nó ưu ái thiết kế cho việt nam mình xài thôi á ^^
Khi nhập vào chữ có dấu thì nó chuyển thành chữ không dấu cho chữ không dấu làm sao nó biết chuyểnthaanhf chữ có dấu nào
vd:
viet nam -> việt nam hay -> viết nam
[=========> Bổ sung bài viết <=========]
bạn bietdivedau bạn khẳng định là không có hảm như vậy hả bạn
vậy bạn có cách nào giúp mình xử lý cái tìm kiếm không dấu cso dấu này k ?
Chỉ giúp mình với
[=========> Bổ sung bài viết <=========]
Trong php thì mình đã xem cách làm rồi. Xem cũng hiểu được pahanf nào chắc cũng làm được còn asp.net mình chưa nghỉ ra .
Các bạn giúp mình với
[=========> Bổ sung bài viết <=========]
À mình hiểu ý bạn tanky rồi
VD: Trong csdl của mình có dòng dữ liệu là : việt nam
thì khi mình nhập vào viet nam thì nó không tìm được còn khi mình nhập vào việt nam hay v hay...thì tìm được
Muốn có thì tự viết thôi:
a -> á,à,ả,ã,ạ,â,....
tương tự như vậy
á,à,ả,ã,ạ,â,.... -> a
khi gặp ký tự đó thì nó thay thế, nhưng mà cũng không hợp lý lắm, 1 chữ có biết bao nhiêu ký tự, mỗi ký tự có bao nhiêu dấu. Cứ thể tổ hợp chỉnh hợp lên thì nó chạy chậm rì
quên chuyên đó đi!
Viết hàm này không có khó. Không ảnh hưởng đến xử lý nhiều.
Bạn nào đã viết rồi thì post lên cho mình xin code được k ?
Code VB càn tốt tại mình đang viết bằng VB
Cảm ơn nhiều