Table of Contents
[PostgreSQL] Sửa lỗi font chữ tiếng Việt Có thể áp dụng để sửa các kiểu lỗi font khác. Thường thì sau khi import dữ liệu vào PostgreSQL, nhất là đối với dữ liệu được import từ Shapefile, DGN (MicroStation), Autocad,.. thì chúng ta rất dễ bị lỗi font do các font được sử dụng trên ArcView (VNI), ArcMap, Mapinfow (TCVN3), MicroStation, Cad,.. thường là font TCVN3 hay Vni. Trong khi mã trên PostgreSQL thường là theo Unicode/UTF-8. Do vậy font khi hiển thị ra sẽ bị lỗi Dưới đây là cách sửa lỗi font trong PostgreSQL do mình nghĩ ra, do vậy bạn nào có cách nào khác nhanh hơn thì có thể chia sẻ ở đây nhé! Các thức sửa font:
- Chuyển dữ liệu sang dạng text
- Xác định mã font gốc là gì (TCVN3 hay Vni hay gì gì.. :v)
- Dùng Công cụ của Unikey để chuyển mã
- Import dữ liệu trở lại PostgreSQL
1. Chuyển dữ liệu sang dạng text
Bước này mục đích cuối là chuyển được dữ liệu sang dạng text, do vậy bạn làm cách nào cũng được, miễn đưa nó về dạng text. [caption id="attachment_655" align="aligncenter" width="1084"]

2. Xác định font ban đầu
Sau khi xuất ra SQL thì chúng ta có thể dùng các text editor để mở nó. Ở đây mình dùng Notepad++. [caption id="attachment_658" align="alignnone" width="615"]
Ctrl Shift F6Tích chọn chuyển mã clipboard [caption id="attachment_659" align="alignnone" width="460"]

Gốc: Êp Phíc HiÖp TCVN3: ấp Phước Hiệp VNI WINDOW: p Phíc HiƯpVậy, dữ liệu của mình là TCVN3. Bây giờ chúng ta sẽ chuyển toàn bộ file SQL từ TCVN3 sang Unicode.
3. Chuyển mã sang Unicode
Chúng ta sẽ dùng bộ công cụ chuyển mã của Unikey để chuyển giống bước 2, tuy nhiên lần này là sẽ chuyển toàn bộ file SQL chúng ta xuất ra được sang unicode [caption id="attachment_660" align="alignnone" width="657"]
4. Import dữ liệu đã sửa vào PostgreSQL
Sau khi đã sửa font dữ liệu, chúng ta sẽ import file SQL trở lại vào PostgreSQL. Để Import vào không bị lỗi, chúng ta cần xóa hết dữ liệu cũ rồi mới Import dữ liệu mới vào. Để xóa dữ liệu cũ, chúng ta chạy lệnh TRUNCATETRUNCATE thuadat;Sau đó import file SQL vào PostgreSQL [caption id="attachment_661" align="alignnone" width="417"]



![[PostgreSQL] Sửa lỗi font chữ tiếng Việt [PostgreSQL] Sửa lỗi font chữ tiếng Việt](https://dothanhlong.org/wp-content/uploads/2018/08/img_5b6e815ade9df.png)