PDA

View Full Version : چرا QUERY های من با EOF مشکل داره ؟



vahab_vb
یک شنبه 14 آبان 1385, 14:48 عصر
سلام
من یک دیتابیس access دارم که اطلاعاتش خیلی زیاده. همیشه اونو با Visual Basic 6 و با کدهای زیر باز میکردم :




Public Sub Bank_Openner(ByVal Local_Address As String, ByVal Read_Or_Write As String, ByVal Table_Name As String, Optional ByVal THE_PASSWORD As String)
On Error Resume Next
Set OBJCN = CreateObject("ADODB.Connection")
OBJCN.Open ("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Local_Address & "; Jet OLEDB:Database Password=" + THE_PASSWORD)

Set OBJRS = CreateObject("ADODB.RecordSet")
Select Case LCase(Read_Or_Write)
Case "read"
OBJRS.Open Table_Name, OBJCN, , , 2
Case "write"
OBJRS.Open Table_Name, OBJCN, , 3, 2
Case "r"
OBJRS.Open Table_Name, OBJCN, , , 2
Case "w"
OBJRS.Open Table_Name, OBJCN, , 3, 2
End Select

End Sub

Public Sub Bank_Closer()
On Error Resume Next
OBJRS.Close
Set OBJRS = Nothing
OBJCN.Close
Set OBJCN = Nothing
End Sub



جدا از بحث ویژوال بیسیک، من این کدها رو توی سایتم هم بکار میبرم. و درست کار میکنن.
چند وقت پیش من اونا رو روی سایتم امتحان کردم ولی بجای Table اسم Query هام رو گذاشتم. بر روی سایتم کار میکرد. ولی نمیدونم چرا روی ویژوال بیسیک وقتی اجراش میکنم. وقتی میرسه به شرط EOF همیشه EOF مقدار TRUE داره. در صورتیکه کامپایلر هنوز اولین بارشه که وارد اون خط میشه و اطلاعات داخل اون QUERY هم خیلی زیاده.
جالب اینجاست که حتی یک خطا هم از نظر برنامه نویسی ندارم. همه چیز مثل قبله و تنها چیزهایی که تغییر کرده همین اسم TABLE به QUERY هستش.

موندم چرا این مشکل پیش میاد ؟!!!
تا به الان هر مشکلی بوده حل کردم ولی این یکی رو دیگه قفل کردم.
لطفا کمکم کنید. ممنون