آدو ذریعہ GetString() اسکریپٹ کو تیز کرنا

آپ کو GetString() میتھد کو استعمال کرکے اپنے ASP اسکریپٹ کو تیز کر سکتا ہو (کثیر سطر Response.Write کی جگہ استعمال کریں)。

مثال

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 نمایش دهیم.

روش 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 میں سیکلکٹ کمانڈ سے واپس لوایا گیا تمام سارے سٹرینگ اور رکارڈز کا ایک سٹرنگ شامل ہوتا ہے۔ ہر سٹرنگ کے درمیان </td><td> اور ہر رکارڈ کے درمیان </td></tr><tr><td> آپاری ہوتا ہے۔ اس طرح سے، ہماری نیاز کا ہائی تی ایم ال بنایا جاتا ہے، جس کی ترتیب کی جائے تو Response.Write استعمال کی جانی چاہئیے۔