קווים מנחים לעברית במסדי נתונים
עברית ב- SQL Server
במסד נתונים SQL server תמיד תמיד תמיד להגדיר כל שדה מסוג טקסט (text, char, word…) כשהאות n בתחילת שם הסוג (במקום text, לבחור ב-ntext). ההבדל הוא שהשדה text יכיל טקסט המותאם ל-Codepage המוגדר כברירת מחדל על שרת ה-SQL… מה שברוב המקרים יהיה אנגלית(!!!).
כשסוג השדה הוא ntext אז הטקסט הנקלט בשדה הזה מתורגם ל-Unicode (כל השפות, כל הסימנים) ונשמר כפי שנשלח למסד הנתונים. גם בצורה זו לא נפגעים אי אילו חיפושים ומיונים המורצים על השדות הנ"ל.
כאשר השדה מוגדר כ-nxxx יש לבצע שינוי קטן בשאילות, ולהוסיף N לפני הערך המוכנס:
INSERT INTO tbl (nfield) VALUES (N'value')
ה-N מציינת כי הערך ייכנס ב-Unicode.
כאשר הנתונים מוכנסים באמצעות ADO, אין צורך בשינויים כלשהם.
עברית ב-Access
במסד נתונים אקסס (בין אם 97 או 2000) העברית מובנית. זאת אומרת שאם בדף המוצג בדפדפן לא מוצגת עברית, יש לבדוק דבר ספציפי אחד וזה את הקידוד שמתבצע על הדף. לחיצה ימנית על מקום ריק בדפדפן, בחירה ב-Encoding ועברית מסוג כלשהו תפטור את הבעיה ברב המקרים.
עברית בכלל…
אם למרות כל הנ"ל עדיין לא מוצגת עברית אז נשאר דבר אחרון לעשות, וזה עניין שנידון כאן כבר עשרות פעמים כשרובן על ידי, אפילו… וזאת השורה המהוללת הבאה, שמקומה היא בשורה הראשונה בהחלט של העמוד המדובר:
<%@ Language=VBScript Codepage=1255 %>
ישנו תג META המגדיר אוטומטית עברית מצד הדפדפן (מה שחוסך את הלחיצה הימנית המוזכרת לעיל), אבל תג זה מתחלק לשני סוגי העברית היודעים לשמצה… הלוגית והויזואלית. העברית הויזואלית (שייחנקו המשתמשים בה) מעודדת תמיכה בדפדפני נטסקייפ המתים משכבר ולכן היא לא תוזכר כאן… אבל תמיכה בעברית לוגית הפופולרית והמתקדמת ונוחה יותר היא מבורכת לכשעצמה… והשורה הבאה מגדירה את השימוש בה מצד הדפדפן:
<META HTTP–EQUIV="Content-Type" content="text/html; charset=windows-1255">
את השורה הנ"ל רצוי למקם בין תגי ה-HEAD.
בהצלחה!
תגובות בפייסבוק