PDA

View Full Version : AdoDataSet چطور متوجه میشود که کدام جدول را باید آپدیت کند ؟



Mojgan110
شنبه 25 شهریور 1385, 19:04 عصر
با سلام خدمت بخش دلفی.

ببینید ، من AdoDataSet.LoadFromFile میکنم.
حالا وقتی رکوردهای جدیدی به آن اضافه میکنم و میخواهم که UpdateBathc کنم ، آنوقت AdoDataSet اصلا از کجا متوجه میشود که اینها را توی کدام جدول باید بریزد ؟
چون فقط یک AdoConnection بهش وصل است دیگر.

خیلی ممنون و ببخشید اگر سوالم مخسره بود.

vcldeveloper
یک شنبه 26 شهریور 1385, 09:12 صبح
AdoDataSet از طریق AdoConnection به یک سرور و دیتابیس مشخص شده متصل میشه. برای ارتباط با یک جدول شما یا بهش نام جدول را میدید، یا یک SQL Query می نویسید که Recordset ایی از نتایج اون کوئری را برمیگردونه.
اگر منظور شما این هست که در صورتی که در کوئری از join استفاده شده باشه، AdoDataSet از کجا میفهمه کدوم فیلد مربوط به کدوم جدول هست...
ADO به همراه هر یک از فیلدها مشخصات دیگه ایی مثل نام جدول مربوط به فیلد را هم نگه داری میکنه و از این طریق متوجه میشه با تغییر فیلد مورد نظر کدوم جدول باید تغییر بکنه. در این نوع کوئری ها،مشکل فقط در هنگام حذف یک رکورد هست. ممکنه ADO سعی کنه رکوردهایی از تمام جداولی که در نتیجه Query برگشت داده شده اند را حذف کنه؛ در این صورت می تونید از Dynamic Property زیر برای مشخص کردن جدولی که باید داده ها ازش حذف بشند استفاده کنید:


AdoDataSet1.Properties['Unique Table'].Value := 'Your Table Name';