שלח תשובה

זירת השאלות

19 תשובות

  1. ניר טייב הגיב:


    לא רואים אותך פה רבכלל (רוני) טוב שהגעת אלינו

  2. ניר טייב הגיב:

    ועוד משהו קטן שלא קשור לבניית אתרים
    קבוצה של מדעני מחשב הכריזה לפני זמן-מה שיש לדבר על מחשבים בלשון נקבה. להלן הסיבות לכך:
    1.איש מלבד הבורא אינו מבין את ההיגיון הפנימי "שלהן".
    2.השפה הטבעית ש"הן" משתמשות בה כדי לקשר ביניהן אינה מובנת לאחרים.
    3.ההודעה "bad command or file name" מסבירה את המצב בערך כמו "אם אתה לא יודע למה אני כועסת עליך, אז אני בבודאי לא מתכוונת לומר לך".
    4.אפילו הטעויות הקטנות ביותר שלך נשמרות בזיכרון לטווח ארוך, כדי לשלוף אותן מאוחר יותר.
    5.ברגע שאתה מתחייב ל"אחת מהן", אתה מגלה שחצי מהמשכורת הולכת לך על אביזרים בשבילה
    😛

  3. ניר טייב הגיב:

    בעיית SQL…
    אז אני ישר אפנה לעניין…
    יש לי טבלת בשם upgrade ואלו השדות שבא:
    ID – מספור אוטומטי (PK)
    strsubject – נושא (טקסט)
    strMessage – הודעה (תזכיר)
    msgDate – תאריך

    מילאתי קצת נתונים בטבלה (בכל השדות יש נתונים)
    ועשיתי את השאילתא הבאה (במסד):


    SELECT TOP 1 [upgrade].[strSubject]+" "+[upgrade].[msgDate] AS strSubWithDate, upgrade.strMessage
    FROM upgrade
    ORDER BY upgrade.msgDate DESC , upgrade.id DESC;


    השאילתא עובדת אבל עם בעייה אחת התוצאה של שרשור שני השדות יוצאת #ERROR משום מה 😐 ולא רואים את שני השדות כאחד כמו שברצוני לעשות ניסיתי לשים סוגריים שיקיפו את השרשור והניב אותה תוצאה.
    פתורונות ותשובות יתקבלו בשמחה

  4. ניר טייב הגיב:

    נפתר תשובה ל-FAQ
    כשרוצים לאחד שני שדות לשדה טקסט אחד חייבים ששני השדות יהיו מסוג טקסט.
    אבל מה קורה כאשר אחד השדות לא תואם לסוג השדה השני?
    עלינו לבצע המרה ע"י הפונקציות המובנות של המסד (במקרה זה אקסס) ואז לאחד
    פונקציות ההמרה הן:
    cStr – הפיכה למחרוזת
    cBool – הפיכה לבוליאני
    cByte – הפיכה ל-byte
    cCur – הפיכה לערך כספי
    cDate – הפיכה לתאריך
    cDbl – הפיכה לדאבל
    cDec – הפיכה לערך דצימלי
    cInt – הפיכה לערך מספרי שלם (אינטג'ר)
    cLng – הפיכה למס' שלם ארוך
    cSng הפיכה ל-SINGLE (סוג מספרי)


    cVar – Same range as Double for numerics. Same range as String for non-numerics.

  5. אוריקס הגיב:

    התשובה פשוטה הרבה יותר
    אתה מדבר עם אקסס בJS, בעוד שהוא מבין VBS….

    משהו כזה צריך לעבוד לך:

    sql = "SELECT one& " " &two AS newfld FROM tbl";

    בכל מקרה נפקק אותך בגלל פונקציות ההמרה

  6. ניר טייב הגיב:

    לא הבנת אותי אז
    אני דיברתי ברמת המסד
    כשעושים VIEWים ולא ברמת ה-ASP (למרות שזה לא משנה)

  7. אוריקס הגיב:

    אתה בעצמך אמרת
    זה לא משנה…

    כל עוד אתה משרשר ככה זה תמיד סטרינגים.

  8. ניר טייב הגיב:

    שמאחדים שני שדות משתמשים בפלוס ולא
    ב-אמפר (&) (לפחות ככה זה באקסס)
    השאילתא הזו כ עבדה לי:


    SELECT upgrade.strSubject+" – "+cStr(upgrade.msgDate) AS subject, upgrade.strMessage
    FROM upgrade
    ORDER BY upgrade.msgDate DESC , upgrade.id DESC;

  9. אוריקס הגיב:

    זה פתרון עקום.
    ועדיין נהוג ונכון להשתמש ב &. אם למשל תריץ משפט כזה:

    SELECT a+b FROM c

    תראה שהתוצאה תיהיה שונה מ:

    SELECT a&b FROM c

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

  10. ניר טייב הגיב:

    אצלי יצא אותו דבר
    ואני לא יודע מה הסטנדרט בכתיבה של זה אבל שבדקתי מה לעשות דרך המדריך באתר(לפני ששאלתי) ראיתי שם פלוס(+) ולא אמפרסנד(&)

  11. ניר טייב הגיב:

    שאלת יעילות
    בעמוד מסוים יוצא שאני פותח וסוגר את אובייקט החיבור 4,5 פעמים האם להמשיך לעבוד כך ולסגור חיבורים בעמוד הזה כשאני מסיים לעבוד איתם או לפתוח לי חיבור אחד גלובלי בראש העמוד ולסגור אותו בתחתית העמוד.
    כמו כן האובייקט חיבור מאונקלד(מהמילה include) לעמוד כמספר הפעמים שאני משתמש בו.

  12. אוריקס הגיב:

    את ה conn תשאיר
    תפתח רק את ה rs בכל פעם.

  13. ניר טייב הגיב:

    צודק חלקית
    זה כמו עם משתנים רגילים ב-VBS/JS או כל שפת תכנות/סקריפט אחרת
    אם שני השדות הם מספריים אז יעשה חיבור בין שני השדות והשדה יהיה הסכום שלהם
    אם שני השדות הם טקסטואליים המידע ישורשר
    וכך הלאה תלוי בסוג השדה

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

שלח תשובה