एडीओ द्वारा GetString() स्क्रिप्ट गति बढ़ाना

अपने ASP स्क्रिप्ट को गति दें (Response.Write के बजाय) तो GetString() मथड़ी का उपयोग करें。

उदाहरण

GetString() का उपयोग करें
कैसे GetString() का उपयोग करके रिकॉर्ड सेट में डाटा HTML तालिका में दिखाया जाता है。

बहु-पद Response.Write

यह उदाहरण HTML तालिका में डाटाबेस क्वेरी दिखाने के एक तरीके को प्रदर्शित करता है:

<html>
<body>
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "SELECT Companyname, Contactname FROM Customers", conn
%>
<table border="1" width="100%">
<%do until rs.EOF%>
   <tr>
      <td><%Response.Write(rs.fields("Companyname"))%></td>
      <td><%Response.Write(rs.fields("Contactname"))%></td>
   </tr>
<%rs.MoveNext
loop%>
</table>
<%
rs.close
conn.close
set rs = Nothing
set conn = Nothing
%>
</body>
</html>

एक बड़ी क्वेरी के लिए, ऐसा करने से स्क्रिप्ट के प्रसंस्करण समय में वृद्धि होगी, क्योंकि सर्वर को बहुत से Response.Write कमांड को संसाधित करना होगा。

समाधान के लिए, पूरे स्ट्रिंग को बनाना होगा, <table> से <table> तक, और उसे एक बार Response.Write का उपयोग करके आउटपुट करना होगा - केवल एक बार Response.Write का उपयोग करें।

GetString() विधि

GetString() विधि हमें क्षमता प्रदान करती है कि हम एक बार Response.Write का उपयोग करके सभी स्ट्रिंग को दिखा सकें, साथ ही यह भी नहीं करता है कि do..loop कोड और शर्तीय परीक्षण को रिकॉर्डसेट को EOF चेक करने के लिए उपयोग किया जाए।

व्याकरण

str = rs.GetString(format,rows,coldel,rowdel,nullexpr)

यदि आप रिकॉर्डसेट से डाटा का उपयोग करके एक HTML तालिका बनाना चाहते हैं, तो हमें केवल उपरोक्त पारामीटरों में से तीन का उपयोग करना होगा (सभी पारामीटर वैकल्पिक हैं):

  • coldel - वाला HTML
  • rowdel - वाला HTML
  • nullexpr - जब स्तम्भ खाली होता है तो उसके लिए उपयोग किए जाने वाला HTML

टिप्पणी:GetString() विधि ADO 2.0 की विशेषता है। आप नीचे दिए गए स्थान से ADO 2.0 डाउनलोड कर सकते हैं:http://www.microsoft.com/data/download.htm

इस उदाहरण में, हम GetString() विधि का उपयोग करेंगे, जिससे रिकॉर्डसेट को एक स्ट्रिंग में भंडारित किया जाएगा:

<html>
<body>
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "SELECT Companyname, Contactname FROM Customers", conn
str=rs.GetString(,,",</td><td>",",</td></tr><tr><td>"," ")
%>
<table border="1" width="100%">
  <tr>
    <td><%Response.Write(str)%></td>
  </tr>
</table>
<%
rs.close
conn.close
set rs = Nothing
set conn = Nothing
%>
</body>
</html>

ऊपरी वेरियेबल str में SELECT स्टेटमेंट द्वारा वापस प्राप्त सभी स्तम्भ और पंक्तियों का एक स्ट्रिंग है।प्रत्येक स्तम्भ के बीच </td><td> और प्रत्येक पंक्ति के बीच </td></tr><tr><td> दिखाई देता है।इस तरह, Response.Write के एक बार इस्तेमाल से ही हमें आवश्यक HTML प्राप्त हो जाता है。