סיסמה של משתמש עם תו מיוחד

לפני כמה שבועות ניגש אלי משתמש וסיפר לי שהוא שינה סיסמה כמה ימים לפני ומאז הוא מצליח להתחבר מה-TOAD אבל לא מ-SQLPLUS.

זה נשמע לי מאוד מוזר אז ביקשתי ממנו את הסיסמה החדשה שלו. הסיסמה הייתה: a12@b345. מנקודת מבטו של המשתמש זה נראה ככה:

SQL> conn jake/a12@b345
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified
Warning: You are no longer connected to ORACLE.

אהאה אמרתי, הנה הבעיה שלך – שמת תו @ באמצע הסיסמה ועכשיו ה-sqlplus חושב שאתה רוצה שהוא יתחבר לבסיס נתונים בשם b345. אז מה עושים שאל המשתמש?

התשובה היא אותה תשובה לכל הדברים שאורקל לא יודע להבחין בינהם: להשתמש במרכאות. הפתרון במקרה הזה הוא להקיף את הסיסמה במרכאות: "a12@b345":

SQL> conn jake/"a12@b345"
Connected.

וזהו – הבעיה נפתרה!

לא פוסט מאוד מחוכם אבל מכוון שזה קרה לי כבר כמה פעמים עם משתמשים שונים, אולי כדי לתעד את זה.

נ"ב
באמצעות שימוש במרכאות ניתן להכריח את אורקל לעשות כל מיני דברים שהוא לא התכוון לעשות מלכתחילה – לדוגמה ליצור אובייקטים עם שמות case sensitive:

  1  create table "MyTable"
  2* as select * from dual
SQL> 
/
Table created.
SQL> insert into "MyTable" values ('a');
1 row created.
SQL> select * from mytable;
select * from mytable
              *
ERROR at line 1:
ORA-00942: table or view does not exist
SQL> select * from "MyTable";
D
-
X
SQL>
1 תגובה

Trackbacks & Pingbacks

  1. […] זהר אלקיים לרשומה המקורית בבלוג של זהר: סיסמה של משתמש עם תו מיוחד. […]

השאירו תגובה

Want to join the discussion?
Feel free to contribute!

השאר תגובה

אתר זה עושה שימוש באקיזמט למניעת הודעות זבל. לחצו כאן כדי ללמוד איך נתוני התגובה שלכם מעובדים.