آدو ذریعہ 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 استعمال کی جانی چاہئیے۔