zarrin
چهارشنبه 20 اردیبهشت 1385, 07:16 صبح
سلام
همانطور که میدونید هر فایل اکسسی دارای یک سری جداول سیستمی هستش که عبارتند از
MSysAccessObjects
MSysAccessXML
MSysACEs
MSysObjects
MSysQueries
MSysRelationships
بنا به دلایلی من باید لیست فیلدهای این جداول رو بخونم لذا از کد زیر استفاده میکنم:
TmpStrList:TstringList
...
....
:=ADODataSet1.ConnectionString
'Provider=Microsoft.Jet.OLEDB.4.0;'+
'Data Source=G:\Components\TestDB.mdb;'+
'Mode=ReadWrite;Persist Security Info=False';
ADODataSet1.Command Type:=cmdText;
ADODataSet1.CommandText:='Select * from MSysACEs'
ADODataSet1Active := True
(ADODataSet1.GetFieldNames(TmpStrList
(Showmessage(TmpStrList.gettext
این کد به خوبی کار میکنه منتها فقط با دو جدول اول ولی به محض استفاده این تابع برای 4 جدول باقیمانده در بالا به یک پیغام خطا بر میخورم :
Record(s) Cannot be read; no read permission on 'MSysACEs'
کسی میتونه بگه کجای کارم غلطه.؟
با تشکر.
همانطور که میدونید هر فایل اکسسی دارای یک سری جداول سیستمی هستش که عبارتند از
MSysAccessObjects
MSysAccessXML
MSysACEs
MSysObjects
MSysQueries
MSysRelationships
بنا به دلایلی من باید لیست فیلدهای این جداول رو بخونم لذا از کد زیر استفاده میکنم:
TmpStrList:TstringList
...
....
:=ADODataSet1.ConnectionString
'Provider=Microsoft.Jet.OLEDB.4.0;'+
'Data Source=G:\Components\TestDB.mdb;'+
'Mode=ReadWrite;Persist Security Info=False';
ADODataSet1.Command Type:=cmdText;
ADODataSet1.CommandText:='Select * from MSysACEs'
ADODataSet1Active := True
(ADODataSet1.GetFieldNames(TmpStrList
(Showmessage(TmpStrList.gettext
این کد به خوبی کار میکنه منتها فقط با دو جدول اول ولی به محض استفاده این تابع برای 4 جدول باقیمانده در بالا به یک پیغام خطا بر میخورم :
Record(s) Cannot be read; no read permission on 'MSysACEs'
کسی میتونه بگه کجای کارم غلطه.؟
با تشکر.