שלח תשובה

זירת השאלות

414
צפיות
13
תשובות

שאלה פשוטה יחסית

,‏ 17 באוגוסט, 2004

(האשכול שפתחתי נועד בעיקר לשרשורים הקרובים שלי)

בכל מקרה, השאלה שלי היא כיצד להציג את הרשומה החדשה ביותר שהוכנסה למסד הנתונים שלי (צורך העניין , Access) .
נגיד הוספתי חדשות : אני רוצה שרק רשומה אחת של חדשות תופיע לי בדף הראשי, היתר בארכיון (הכנתי כבר ארכיון) . אז בעצם שכחתי (נשחקתי) מהי הפקודה שמחזירה לי את הרשומה החדשה ביותר והאם היא פקודה הקשורה לאובייקט הrs שלי (כמו לדוגמא : rs.movenext) ?

תודה מראש

תגיות:

13 תשובות

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

    SQL נטו


    SELECT TOP 1 <fields> FROM tbl ORDER by <field> DESC

  2. prince01 הגיב:

    ההפך …
    צודק אחי SQL זה הפתרון אבל מה שאני צריך זה ההפך ,
    הTOP לא מציג לי את הרשומה הכי חדשה שהתווספה, אלא את האחרונה.
    מה ההפך של TOP ?

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

    לא הבנת אז את ה-SQL שכתבתי
    TOP X *שולף* את X הרשומות הראשונות לאחר קביעת סידור מסוים
    אם יש לך עמודה מסוג מספור אוטומטי למשל, הרשומה הכי חדשה תהיה הרשומה בעלת המספר הכי גבוה. ברגע שאתה עושה סידור DESC על העמודה הזו אתה עושה שהסדר יופיע מהגדול לקטן (במילים אחרות מהחדש לישן) ואז לאחר מכן שאתה שם TOP X אתה מקבל X הרשומות הכי חדשות בטבלה

    מקווה שעכשיו זה מובן

  4. prince01 הגיב:

    אתה מלך !
    חחח בהתחלה זה לא עבד לי בגלל שהעפתי מהמשפט את הDesc , וזה בגלל שאחרי שהכנסתי את הWHERE שלי זה החזיר לי שגיאה.
    עכשיו סידרתי את המשפט כמו שצריך :


    SELECT TOP 1 fid, fname, fhead FROM fpages where p_id=4 ORDER by fid DESC

    והכל עובד מצויין !!
    תודה אחי ….  אתה איש גדול

  5. prince01 הגיב:

    שאלה חדשה חם מהתנור
    חיפשתי בפורום, בFAQ של האתר, במדריכים ובמאמרים ולא מצאתי מדריך כיצד לבנות מנוע חיפוש לאתר אשר יחפש בתוך מסד הנתונים שלי (Access) ?
    האם מאמר כזה קיים באתר ?

  6. בעיקרון
    אתה צריך להשתמש בפסוקית where. הנה קישור להדגמה של שאילתת חיפוש כאשר מדובר על מחרוזת: https://www.webmaster.org.il/Faq_A.asp?sSubject=7&QId=116
    דוגמה נוספת לחיפוש כל האנשים שקוראים להם 'טל' (ולא כמחרוזת):


    name=request.form("name") ' הערך שאתה מקבל מהטופס

    select * from users where firstname="&name&" order by id

  7. prince01 הגיב:

    אחלה ! תודה .. הצלחתי
    בניתי מנוע חיפוש טיפ-טופ ..
    תודה

  8. prince01 הגיב:

    שאלה חדשה-ישנה
    זוכרים את השאלה שלי בשרשור הקודם על הצגת נתונים לפי שעה (בין 20:00:00 ל08:00:00) ? אז הבעיה לא בדיוק נפתרה למרות שחשבתי שכך .

    להלן הסקריפט שבניתי :


    <%
    'create recordset to show database categories
    Dim Conn, rsCatalog, i, time
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open ConString
    Set rsCatalog = Conn.Execute("SELECT * FROM pinot")
    i=hour(time)
    if (i>=20) or (i<=22) then
    While not rsCatalog.EOF
    %>
    <%= rsCatalog("pname") %>
      <%
    rsCatalog.MoveNext
    Wend
    rsCatalog.Close
    Set rsCatalog = Nothing
    else
    response.write "טרם עודכן."
    end if
    %>

    ומדוע עדיין לא עובד לי ?
    תודה .

  9. prince01 הגיב:

    קבלו תיקון
    בתוך הלולאה שלי קבעתי שעה בין 20 ל22, קיצר התכוונתי ל :


    if (i>=20) or (i<=22) then

    סתם לצורך העניין

  10. prince01 הגיב:

    שאלה בנוגע לפונקצייה שבניתי
    בניתי פונקצייה שבעצם תצור לי <BR> בכל פעם שאני שובר שורה .


           Function FormatStr(strTemp)

        strTemp = Replace(strTemp, chr(13), "")
        strTemp = Replace(strTemp, chr(10), "<br>")
        strTemp = Replace(strTemp, "<br><br><br><br>", "<br><br>")
        strTemp = Replace(strTemp, "<br><br><br>", "<br><br>")
        strTemp = Replace(strTemp, chr(34), "'")
        strTemp = Replace(strTemp, "(", "(")
        strTemp = Replace(strTemp, ")", ")")
        
        FormatStr = strTemp
        
    End Function

    ובשליפת נתון שלי מהמסד עשיתי כך :

    <%= rs(FormatStr("fbody")) %>

    וזה לא עובד לי …
    כיצד אוכל לתקן ?

  11. prince01 הגיב:

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


    <%= Replace(rs("fbody"),chr(13),"<br>") %>

  12. prince01 הגיב:

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

    מה שבעצם אני מחפש זה כיצד לשלוף את שם המשתמש שדרכו אני מחובר ברגע זה ? (myuid זה העמודה של השמות במסד הנתונים [אקסס] שלי) .
    כיצד זה אפשרי ?

שלח תשובה