ببخشید من کد شما رو نخونده بودم کاملا. فکر کردم میخواید اطلاعات رو از بانک بخونین.
من فکر میکنم اشکال در تعریف OleDbCommandBuilder باشه. احتمالا اگر به شیوه زیر تعریف خودتون رو اصلاح کنید مشکل حل بشه :
کد:
OleDbCommandBuilder oled_comandbuilder= new OleDbCommandBuilder(oled_dataadaptr);
البته خودم تست نکردمش.
البته من توصیه میکنم اگر میخواهید بدون wizard برنامه بنویسید اصلا از dataset استفاده نکنید. چون سرعت تبادل اطلاعات در dataset به دلیل سربار اطلاعاتی موجود در آن ، کمتر از شیوه های دیگه است. البته نظر منه. من توصیه میکنم از ترکیب datareader و Generics و با استفاده از اصول OOP در دات نت برنامه خود را پیاده سازی کنید. و اگر هم نگران کدهای زیادی هستید که باید پیاده سازی کنید( و البته به نظر من در آینده برای توسعه نرم افزارهایی که می نویسید کمک بسیاری خواهد بود) به سرغ linq بروید که هم از اصول OOP به درستی پشتیبانی می کند و هم سرعت تبادل اطلاعات در آن سریع است و هم نیاز به کد نویسی کمی دارد و در واقع لایه Data Access زا برای شما ایجاد می کند.
البته این روشها به درد برنامه های تجاری و قابل توسعه میخوره. اگه برنامه ات پروژه دانشجویی هست یا یه برنامه کوچک(از نظر حجم فرآیندهای اجرایی) با همون wizard کار کن.