PDA

View Full Version : Ado_Query.RecordSet



FirstLine
چهارشنبه 02 دی 1383, 02:09 صبح
با سلام
یک گرید به یک DataSource & AdoQuery و بانک SQL متصل است.
برای محدود کردن تعداد رکوردهای Query از چی استفاده کنم؟ (مثلا 10 رکورد)(MaxRecord=10 و یا Ado_Query.Recordset.PageSize=10 ، البته MaxRecord=10 جواب میدهد)
برای نمایش 10 رکورد دوم یعنی از رکورد شماره 11 تا 20 چکار کنم؟ (من در ASP کلاسیک از دستورات زیر استفاده میکردم اما در دلفی نمیدونم چجوری میتونم اینکار را بکنم و وقتی کدهای زیر را مینویسم Error نمیگیرد ولی درست هم کار نمیکند) :گیج:



Ado_Query.Recordset.PageSize := 5;
Ado_Query.Recordset.CacheSize := 5;

Ado_Query.Recordset.AbsolutePage :=2;

با تشکر

hr110
چهارشنبه 02 دی 1383, 08:35 صبح
با سلام
دوست عزیز برای paging بارها و بارها در این سایت جوابهای خیلی خوبی داده شده است که با جستجو کردن میتوانید انها را بیابید.

ولی برای اطلاع باید عرض کنم که با این دستوراتی که شما نوشته اید به جوابتان نخواهید رسید(البته جواب مکفی). برای این کار شما باید از دستورات SQL استفاده نمایید.

صفحه اول :

Select top 10 * from TABLENAME
صفحه دوم :

Select top 10 * from TABLENAME where UNIQFIELD > FVALUE
UNIQFIELD: یکی از فیلدهای جدولتان که همواره مقادیر منحصر بفردی در آن قرار میگیرد به عنوان مثال فیلد PK اگر این فیلد وجود نداشت( :strange: ) میتوانید از ترکیب چند فیلد هم استفاده نمایید.
FVALUE: مقدار فیلد UNIQFIELD آخرین رکوردی که در هر بار که اطلاعات لود میشود.

این یک مثال و روش ساده از حل مسئله میباشد، ولی شما به این جواب بسنده ننموده و به دنبال راههای جدید باشید و همواره بخاطر داشته باشید که :
به تعداد انسانهای روی زمین راه برای رسیدن به جواب( یا خدا) وجود دارد :wink:

FirstLine
چهارشنبه 16 دی 1383, 11:51 صبح
با سلام
از راهنمایی شما دوست عزیز سپاسگزارم.

نقل قول:
برای paging بارها و بارها در این سایت جوابهای خیلی خوبی داده شده است


من جستجو کردم ولی چیزی که جواب داشته باشد پیدا نشد، لطفا آدرس عنوانهایی که جواب داشته و کامل است را مرحمت بفرمایید. (عنوانهای زیادی وجود دارد اما به نتیجه نرسیده است)

من با دستورات بالا در ASP3 به نتیجه رسیدم و الان هم دارد کار میکند و این موارد در دلفی موجود است و مسلما قابل استفاده خواهد بود.
من چون کامپوننتی مثل گرید در ASP.NET با امکانات Paging پیدا نکردم گفتم شاید اینجوری بتونم به نتیجه برسم.
در ضمن کامپوننت SDAC یک CrGrid دارد که فقط در پایین صفحه شماره صفحه را مینویسد و عمل Paging را ندارد.(اگر این را دارد لطف کرده و راهنمایی فرمایید)
البته من از DBISAM4 استفاده میکنم. :oops:
یعنی هیچ راهی وجود نداره؟!
با تشکر