PDA

View Full Version : سوال در مورد ارتباط با بانک اطلاعاتی Sql



ali_nob
جمعه 23 شهریور 1386, 22:38 عصر
با سلام
جهت متصل شدن و کار با بانک اطلاعاتی sql روش های مختلفی من دیدم مثل استفاده از command های sql ، روش Dataset و سپس اعمال تغییرات Dataset با بانک اطلاعاتی.
اگه کسی لطف کنه و یک توضیح کاملی از مزایا و معایب و مقایسه روش ها بگه یا link بده که بسیار عالی و ممنون می شوم ولی سوال اصلی من اینه که اگه ما جهت کار با بانک اطلاعاتی یک Dataset بصورت متغیر در برنامه بسازیم در مقایسه با استفاده از شیئ Dataset که میشه به فرم اضافه کرد و بصورت مثلا DataSet1.xsd ظاهر میشه و یک فایل هم با همون نام تولید میشه چه تفاوتی و چه مقایسه با حالت تعریف متغیر Dataset داره؟

saeed_rezaei
شنبه 24 شهریور 1386, 00:20 صبح
سلام.
همانطور که گفتید روش command با dataset متفاوته.
برای کار با بانکهای اطلاعاتی به دو روش می شه اطلاعات رو ذخیره و بازیابی کرد.
1: دیتاست. دیتاست کاملا شبیه دیتابیس هست. دیتابیس فیلدها، ساختارها، اطلاعات و سایر موارد مروبط به دیتابیس رو در خودش نگهداری می کنه. دیتاست ، ستی از اطلاعات هستند که شما با توجه به نیازتون از بانک اصلی بر می گردونید و پس از انجام عملیات حذف، اضافه و ویرایش دوباره اطلاعات دیتاست رو روی دیتابیستون می ریزید.
2: روش دسترسی مستقیم. بر خلاف دیتاست که شما با استفاده از واسطه ای به نام دیتاست عملیاتتون رو انجام می دادید. در این روش، برنامه به صورت مستقیم و آنی مبادرت به ایجاد، حذف و ویرایش رکوردها در دیتابیس می کنه.
هر کدوم از روشها کارایی خودشون رو دارند. برای مثال در روشهایی که از راه دور اطلاعات گرفته می شن، ترجیحا از دیتاست استفاده می شه. یه بار دیتاست رو با اطلاعات سرور راه دور، پر می کنند . چون دیتاست روی کامپیوتر محلی هست، لذا سرعت برنامه هنگام حرکت بین رکوردها خیلی بالاست و همچنین اضافه کردن مثلا ده رکورد، نیازمند برقراری ده بار اتصال بابانک نیست. تمام اطلاعات در دیتاست به صورت موقتی ذخیره می شن و در دنهایت با یه بار اتصال به بانک اصلی، اطلاعات از دیتاست روی دیتابیس منتقل می شه.
اما روش مستقیم رو روی شبکه های باسرعت بالا می شه استفاده کرد. چون سرعت بالاست و ترافیکی هم وجود نداره، لذا کاربر می تونه هر لحظه که اطلاعات جدید رو وارد و یا دراطلاعات قبلی تغییری ایجاد نمود، خیلی سریع این اطلاعات روی بانک اصلی منعکس می شه و کاربران دیگه می تونند خیلی سریع متوجه تغییرات بشن و از انجام بعضی کارهای تکراری و بیهوده جلوگیری می شه.

ali_nob
شنبه 24 شهریور 1386, 22:45 عصر
بسیار ممنون از شما فقط اگه در مورد سوال اصلی من یعنی " اگه ما جهت کار با بانک اطلاعاتی یک Dataset بصورت متغیر در برنامه بسازیم در مقایسه با استفاده از شیئ Dataset که میشه به فرم اضافه کرد و بصورت مثلا DataSet1.xsd ظاهر میشه و یک فایل هم با همون نام تولید میشه چه تفاوتی و چه مقایسه با حالت تعریف متغیر Dataset داره؟" هم توضیح بدید هم بسیار ممنون میشوم

ghafoori
یک شنبه 25 شهریور 1386, 10:24 صبح
حالت دوم یک typed dataset است یعنی دیتاستی که ساختار جداول و ازتباط انها را قبل تعریف شده و داخل برنامه به راحتی با ان می شود کار کرد DataSet1.xsd یک فایل شما (schema) است که ساختار دیتاست را بصورت xml در خود دارد

ali_nob
دوشنبه 26 شهریور 1386, 20:44 عصر
در حالت typed dataset فایل .xsd آیا پس از Compile برنامه و زمان اجرای اون هم ایجاد میشه ؟ منظورم مثلا وقتی که برنامه Package بشه و یک جا نصب بشه ؟ و ضمنا آیا اینطوری یعنی ایجاد شدن یک فایل xml آیا سرعت و امنیت کاهش پیدا نمیکنه ؟

ghafoori
سه شنبه 27 شهریور 1386, 11:12 صبح
در حالت typed dataset فایل .xsd آیا پس از Compile برنامه و زمان اجرای اون هم ایجاد میشه ؟ منظورم مثلا وقتی که برنامه Package بشه و یک جا نصب بشه ؟ و ضمنا آیا اینطوری یعنی ایجاد شدن یک فایل xml آیا سرعت و امنیت کاهش پیدا نمیکنه ؟
نه این فایل ایجاد نمی شود زیرا فقط برای compilerو editor ایجاد شده این فایل بصورت کد وی بی در می اید و همراه بقیه کدها کامپایل شده و جز فایل exe می شود