בולנט - דברים מיוחדים...     פרוטו - בניית אתרים

Israeli ASP Organization

ארגון ה-ASP הישראלי

מאמרים/דוגמאות קוד
קישורים
ספרות
חיפוש כללי:

חפש!
כלליHTMLASPASP.NETSQLמסדי נתוניםJavaScriptXML * XSLDHTML * CSSעיצוב וגרפיקהשרתיםComponentsפרסום ושיווקקידום אתריםקופירייטינגPHP
פרסומת
דף ראשי מדורים דרושים הרשמה למועדון אודותינו צור קשר
מיקום: מאמרים ודוגמאות קוד > ASP

GetRows

לעולם אל תאסוף מידע בצורה אחרת!

כשרוצים להציג מידע מתוך מסד נתונים, רוב האנשים עושים את הדבר הבא:

<% [פתיחת מסד הנתונים] Do UNTIL EOF FName=rs("first") LName=rs("last") Email=rs("email") rs.MoveNext .... עיבוד ועיצוב הנתונים בטבלאות וכו .... Loop [סגירת מסד הנתונים] %>

נגיד שישנן 700 רשומות ו-3 עמודות, יש לנו 2,100 בקשות לקריאה ממסד הנתונים.
הרבה מאוד טיולים במסד הנתונים...
יותר נכון יהיה לכתוב את הקוד בצורה הבאה:

<% [פתיחת מסד הנתונים] myArray = rs.GetRows rs.Close Set rs = nothing [סגירת מסד הנתונים] NumOfCols = ubound(myArray,1) NumOfRecords = ubound(myArray,2) For i = 0 To NumOfRecords FName = myArray(1,i) LName = myArray(2,i) Email = myArray(3,i) .... עיבוד ועיצוב הנתונים בטבלאות וכו .... Next %>

העברה אחת ל-700 רשומות כפול 3 עמודות.
אנחנו אף יכולים לסגור את אובייקט האוסף-רשומות (RecordSet) ואת הקישור (Connection) למסד הנתונים עוד לפני שאנחנו מתחילים לעצב, לחשב ולכתוב את הנתונים למסך.

בטח אתם שואלים את עצמכם, אם זוהי שיטה כל כך טובה, למה רוב האנשים לא משתמשים בה?
שאלה טובה!
התשובה היא: כי הם למדו לעבוד בשיטות אחרות (MoveNext, בטח...) אבל בואו נגיד ש-300 איש נכנסים לאתר שלי (הגיוני, לא?) ובכן, דפי הASP שלי קוראים נתונים ממסד הנתונים... אם לא הייתי משתמש בGetRows הייתי צריך מעבד חזק בשביל כל הבקשות של המידע ע"י הסקריפטים ושמירתו בזכרונות זמניים כדי לספק את השירות לכל הגולשים בו זמנית.
כשמדובר בשרת, כל מילי-שניה שאתה מבזבז על סקריפט שכתוב בצורה לא נכונה יכול להיכפל בעשרות אלפי גולשים ולאבד זמן יקר בנסיונות הכושלים לקרוא שדות ולעבור רשומה רשומה.

שימו לב טוב איך הדוגמא שלי מאפשרת לסגור את RS ואת CN עוד לפני התהליכים על הנתונים שהוצאתי ממסד הנתונים. הקריאה עם GetRows לוקחת בסביבות 3/4 שניה והאובייקטים כבר סגורים ומסד הנתונים מסיר את כל המנעולים ומפנה אותו לקריאה הבאה.
כל זמן העיצוב, אין הפרעה של גולשים על גולשים אחרים וזהו, רבותי, המצב האופטימלי!

עם GetRows אתם יכולים למתוח את הביצועים של מסדי הנתונים החלשים ביותר, למעלה - לשמיים.

כל מה שנותר לי להוסיף זה: "תנסו - ותראו"



         

מחבר: אדם ליבסקירמת קושי: 2  ||  ציון: (7.66666666666667)כל הזכויות שמורות ל-IAO ©

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