עבור לתוכן

בדיקה אם השם משתמש קיים במסד נתונים

Featured Replies

פורסם

שלום

יש לי תכנית ב JAVA שרושמת משתמש לתוך מסד נתונים. אני משתמש במסד נתונים מסוג ACCESS.

רציתי לדעת איך אני יכול לבדוק האם השם משתמש קיים במסד נתונים בכל צורה אפשרית

לדוגמא, יש לי משתמש שקוראים לו user (שקיים כבר במסד)

ועוד מישהו רוצה להירשם בתור UseR או User או בכל וראציה כזו או אחרת, יקבל הודעה מתאימה שהשם משתמש כבר תפוס.

איך אני מבצע את הבדיקה הזו?

תודה

פורסם

השאלה היא לגבי השליפה? אם כן אז נניח לטבלה שלך קוראים "users":


select count(*) from users where upper(user_id) = upper(input_user_id)

ואז לבדוק אם מהערך חוזר 1 או 0.

פורסם
  • מחבר

היי,

לא כ"כ הבנתי מה השאילתה עושה ..

אני צריך לבדוק אם קיים במסד נתונים משתמש לדוגמא user, USER, useR וכו'...

מה זה UPPER ו INPURT_USER_ID ?

אשמח להסבר :)

שבת שלום!

תודה רבה

פורסם

input_user_id - זה היוזר שמישהו עכשיו הכניס - זה השם שאתה בעצם רוצה לבדוק אם הוא כבר קיים או לא.

איך בודקים בעצם - אתה צריך לבצע שליפה ממסד הנתונים כדי לבדוק אם כבר יש כזה יוזר או לא.

השאילתא שנתנו לך הולכת לטבלה בשם users ושולפת את כל השורות שהטור user_id שלהן זהה ל-user_input_id. אבל במקום לשלוף את השורות עצמן אתה שולף את הכמות של השורות שהתקבלה ע"י שימוש בפונציקה Count. מה שנותר לך זה לבדוק את המספר שחזר מהשאילתא - אם 0 - אין במסד כרגע שם יוזר שזהה ליוזר שהכניסו, הכל בסדר.

אם 1 זה אומר שיש שורה עם כזה יוזר, אז אתה לא יכול להכניס עוד אחת (פה אני מניח שאתה מתריע למשתמש שלך שיש כבר יוזר בשם הזה ושיבחר שם אחר).

כמו כן נעשה שימוש בפונקציות upper - זה הופך את שני המשתנים ל-upper case ככה שכל ווריאציה של ה-user_id תתקבל כשווה שזה מה שביקשת.

שים לב שכל השמות של הטבלה והטורים והמשתנים - אתה צריך להחליף אותם בשמות של הטבלאות והטורים במסד שלך, כפי שאתה הגדרת אותם.

Users - הטבלה שמכילה את כל היוזרים.

user_id - שם הטור בטבלה הנ"ל שמכיל את שם היוזר עצמו (על הטור הזה אתה בעצם מריץ את השאילתא).

input_user_id - המשתנה שמכיל את שם היוזר שעכשיו הוכנס לטופס שאותו אתה מחפש בטור הנ"ל לראות אם הוא כבר קיים.

פורסם
  • מחבר

זה רושם לי

Undefined function 'upper' in expression.

תודה! :)

פורסם
  • מחבר

הצלחתי :) תודה רבה על העזרה ..

ד"א, מי שמתעניין Ucase זה התחליף ל upper

פורסם
  • מחבר

אני משתמש ב ODBC ..

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים