مشكل كوچولوي من در Access

با سلام
آقا من در ASP از connection زير استفاده ميكنم و چند مشكل كوچولو دارم:

Set Con = Server.CreateObject("ADODB.Connection")
Set rsQuery = Server.CreateObject("ADODB.Recordset")
Con.Open "Driver={Microsoft Access Driver (*.mdb)}; Dbq=" & Server.MapPath(DBPATH)

1- دستور MoveLast در اينجا كار نميكند! و من نمي توانم مستقيما به آخرين ركودم مراجعه كنم و مجبورم از طريق يك حلقه و با دستور MoveNext ركوردها را طي كنم تا به آخرين ركوردم برسم! كه اين باعث كاهش سرعت خواهد شد!
2- براي بدست آوردن تعداد كل ركوردها دستور RecordCount كار نمي كند! و من براي بدست آوردن تعداد ركوردها مجبورم آن ها را دونه به دونه از طريق يك حلقه بشمارم! كه اين باعث كاهش سرعت خواهد شد!

ممنون ميشم كه اساتيد و متخصصان اين سايت مرا در اين راه ياري فرمايند...
 

mehradmoein

Member
وقتی که از movelast یا recordcount استفاده می کنید , error می ده؟اگه error می ده لطفا error رو بنویسید.
 

CaptanBlack

Member
سلام

در رابطه با recordcount lکه ADO و اکسس مشکل دارند و این همیشه 0 بر میگردونه !

شما برای گرفتن تعداد کل رکورد ها از یک SQL استفاده کن (همرا با SQL اصلی ! منظورم اینه که مثلا فیلد 1 و 2 را از table 1 میخوای ! و تعداد کل رکورد را هم میخوای) :
select count(*) as [tblcount],field1,field2 from table1
در رابطه با movelast هم فکر نکنم مشکلی باشه ! شما باید به MDAC زیاد شک کنی ! اگر ورژن شما 2.6 یا 2.7 هستش بهتره 2.8 را نصب کنی و شایدم مشکل از انتخاب Cursor جدول باشه !

اگه مشکل نمایش آخرین رکورد هستش ! و مثلا یک فیلد Autoincreament هم داری که اسمش tbl_id هستش ! اینطوری استفاده کن :
select top 1 * from table1 order by tbl_id DESC
 

جدیدترین ارسال ها

بالا