PDA

View Full Version : چگونگی Set کردن ADO -DataSource برای MSFlexGrid



as_200340
دوشنبه 31 اردیبهشت 1386, 01:37 صبح
سلام من با این کد :


con_str = "Provider=Microsoft.jet.oledb.4.0;data source=Database\Database.mdb;persist security info=false"
Set connect = New ADODB.Connection
Set rs = New ADODB.Recordset
connect.Open con_str
rs.Open str_sq, con_str, adOpenDynamic, adLockOptimistic, 1

به دیتا بیس ام وصل شدم حالا چطور دیتا سورس ADO رو برای MSFLEXGRID ست کنم ؟
ممنون

CodeMasterX
دوشنبه 31 اردیبهشت 1386, 06:21 صبح
اول اینکه رکوردست های ADO با ConnectionString باز نمیشن!
اونجا که پارامتر دوم رکوردست رو با con_str پاس دادین مشکل پیدا میکنه،شما باید به این پارامتر یه کانکشن فعال بدی از نوع ADODB.Connection.
برای اتصال رکوردست به کنترلی مثل FlexGrid هم باید بنویسی :
Set FlexGrid1.DataSource = rs

ولی باید دقت کنی که بعد از این عمل رکوردست رو نبدنی،رکوردست باید تا وقتی که فرم مربوطه باز هست باز بمونه.

as_200340
چهارشنبه 02 خرداد 1386, 03:46 صبح
با سلام
دوست عزیز اگه میشه یکم بیشتر توضیح بدید
ممنون

CodeMasterX
پنج شنبه 03 خرداد 1386, 00:57 صبح
دوست عزیز کار سختی نیست که نیاز به توضیح داشته باشه،شما بیشتر راه رو درست رفتی.
شما وقتی یه رکوردست رو باز کردی اون رو به کنترل گرید متصل میکنی.فقط باید توجه داشته باشین که تا وقتی که فرم باز هست رکوردست هم باز بمونه:



Private Sub Form_Load()
Dim CN As New ADODB.Connection
Dim RS As New ADODB.Recordset

CN.Open ConnectionString
RS.Open "SELECT * FROM TableName" , CN , adOpenStatic, adLockOptimistic
Set DataGrid1.DataSource = RS
End Sub

Private Sub Form_Unload(Cancel As Integer)
Set RS = Nothing '// Dispose Recordset Object
End Sub


مشکل جل شده ؟