קודם כל, זה משהו מיוחד לאקסס, שלא יפעל במסדי-נתונים אחרים. למה לבצע דברים
סופר-לא-תקניים(לא שלמישהו אכפת יותר מדי מהתקן של SQL...) אם לא חייבים?
העניין השני הוא זה שכתבתי עליו
פה. אם לגבי טקסט זה לא היה חד-משמעי, לגבי
מידע בינארי באינטרנט המצב פשוט וברור: שימוש טריק ה-OLE הזה של אקסס יהיה
הרבה יותר איטי משמירת נתיב של קובץ.
בוא ננתח את המצב בשני המקרים.
אם אנחנו שומרים את הנתיב של הקובץ, כל מה שדף ה-ASP צריך לעשות הוא לשלוף
את המידע ממסד-הנתונים, ואז לשלוח ללקוח משהו בסגנון:
קוד:
Response.write("<img src=""" & rs.Fields("img_loc") & """ />")
אם תשתמש בשדה OLE, המצב מסתבך בהרבה. דף ה-ASP ניגש למסד-הנתונים
ומוצא את התמונה המבוקשת,
אבל הוא לא יכול לשלוח אותה ללקוח!
מה שהוא צריך לעשות זה לשלוח משהו בסגנון:
קוד:
Response.write("<img src=getimage.asp?id=""" & rs.Fields("id") & """ />")
כאן צריך להריץ עוד דף ASP, שצריך לפתוח עוד קישור למסד הנתונים, לקרוא את
כל התמונה ולשלוח אותה בחזרה, בערך כך:
קוד:
Response.ContentType="image/jpeg"
Response.write(rs.Fields("ole_img"))
לא מיותר?