PDA

View Full Version : سوال: بانک اطلاعاتی



laleh_gb
شنبه 24 تیر 1391, 10:49 صبح
بانکی را به برنامه متصل کنیم.پس از اتصال اطلاعات بانک را تغییر می دهیم اما در ویژوال اطلاعات بانک عوض نمیشود.همچنین اگر در ویژوال تغییری روی جدول ایجاد کنیم دربانک ذخیره نمی شود! مشکل کجاست؟

mj_nokhost
شنبه 24 تیر 1391, 11:03 صبح
میشه واضح تر بگین ؟
از چه روشی استفاده میکنین ؟

laleh_gb
شنبه 24 تیر 1391, 11:10 صبح
ببینید بااستفاده از dataset ارتباط رو برقرار کردم.بعد تو اکسس اطلاعات فیلدهای جدولم رو کم وزیاد کردم وsave. حالا برنامه vb رو یک بار دیگه اجرا میکنم اما میبینم vb هنوز اطلاعاتش همون اطلاعات قبل از ویرایش بانک به دست خودمه یعنی مقدار فیلد هام تغییر نکرده چه کار کنم که با هر تغییری در بانکم vb هم ازاون تغییر خبر دار شه ومقادیرش تازه شه؟

mj_nokhost
شنبه 24 تیر 1391, 11:20 صبح
میتونی کدی رو که نوشتی بدازی ؟
اخه اینجوری بهتر میتونم کمکت کنم ...
wizard که کار نکردی؟

laleh_gb
شنبه 24 تیر 1391, 11:24 صبح
نه تمام مراخل اتصال رو با ویزارد رفتم.

mj_nokhost
شنبه 24 تیر 1391, 11:35 صبح
bebin solaet kheyli gongo majhule
miduni vase kar ba dataset rahaye ziyadi vpojud adare , mna ya baghiye dustan nemitunim dorost komaket konim
akhe na codeto didim na barnamtao ke bdunim shima az che rahi estefade kardi ke in moshkelo darin .
aya shoma vase dataset metod tarif kardi
ya
ba adapter uno fill ya updte mikoni ?
aya azash nemune giri kardi tuye client ?
aya connection string ro dorost estefade mikoni ?

mj_nokhost
شنبه 24 تیر 1391, 11:52 صبح
Dim dt As New DataSet1.anbarDataTable
Dim adap As New DataSet1TableAdapters.anbarTableAdapter

adap.Fill(dt)

DataGridView1.DataSource = dt

inam ye nemune cod ke dar sade tarin surate momken neveshte shode
faghat bayad bejaye esme javlae khodeto jaygozin koni
omidvaram be dardet bokhore

laleh_gb
شنبه 24 تیر 1391, 12:18 عصر
مرسی اما من مشکلم توی به روز شدن خودکار اطلاعات vb با اطلاعات جدید بانکمه..
اصلا vb این امکان روداره که به همراه بانک تغییرات رااعمال منه؟

alimanam
شنبه 24 تیر 1391, 15:29 عصر
با سلام

این مشکل ممکنه به 2 دلیل اتفاق بیافته :

1- اطلاعات جدول رو بعد از Edit کردن باید Save کنین با کدهای زیر : ( این کدها رو برای دکمه ذخیره بنویسید )

http://up.vbiran.ir/images/1km3joglwjjr9y2jpf2.gif


Me.Validate()
Me.CategoriesBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.NwindDataSet)



2- چون به صورت ویزاردی کار کردین احتمالا خاصیت Copy to Output Directory بانک اطلاعاتی شما بر روی گزینه Copy Always ست شده باشه باید اون رو بر روی گزینه Copy if never ست کنین مشکل بر طرف میشه .

http://up.vbiran.ir/images/bv0k7mdwzm7qdpxha1j9.gif


موفق باشید ./

laleh_gb
یک شنبه 25 تیر 1391, 08:43 صبح
هردو رو چک کردم ولی متاسفانه اینم تاثیری نداشت.

laleh_gb
یک شنبه 25 تیر 1391, 08:49 صبح
اینم تاثیری نداشت.

مرتضی تقدمی
یک شنبه 25 تیر 1391, 10:39 صبح
سلام
همه بانک های توی استادیو رو detach یا delete کن. بعد بانک های جدید رو connect بزن. ببین شاید مشکلت حل شد.
موفق باشید

alimanam
یک شنبه 25 تیر 1391, 23:58 عصر
با سلام


هردو رو چک کردم ولی متاسفانه اینم تاثیری نداشت.

شما اگر از روش ویزارد استفاده کرده باشین و به فرض استفاده کردن از Data Source Connection که در تصویر زیر نشون دادم به هیچ عنوان با توضیحاتی که در پست 9 به شما دادم نباید مشکلی داشته باشین مگر اینکه به درستی به اون توضیحات عمل نکرده باشین یا فرضیات من درست نبوده باشه .

http://up.vbiran.ir/images/am95ha0k304avi6ahb4j.png


اگر باز هم متوجه عرض بنده نشدید ! از این فایل آموزشی (http://manamsoft.ugig.ir/download/media/SQL-Wizard.swf) کمک بگیرید .

موفق باشید./

laleh_gb
دوشنبه 26 تیر 1391, 08:44 صبح
سلام
همه بانک های توی استادیو رو detach یا delete کن. بعد بانک های جدید رو connect بزن. ببین شاید مشکلت حل شد.
موفق باشید

این کار رو بارها انجام دادم حتی برنامه رو از اول ایجاد کردم بازم نشد. به هرحال تشکر بابت توجهتون.

laleh_gb
دوشنبه 26 تیر 1391, 08:52 صبح
با سلام



شما اگر از روش ویزارد استفاده کرده باشین و به فرض استفاده کردن از Data Source Connection که در تصویر زیر نشون دادم به هیچ عنوان با توضیحاتی که در پست 9 به شما دادم نباید مشکلی داشته باشین مگر اینکه به درستی به اون توضیحات عمل نکرده باشین یا فرضیات من درست نبوده باشه .

http://up.vbiran.ir/images/am95ha0k304avi6ahb4j.png


اگر باز هم متوجه عرض بنده نشدید ! از این فایل آموزشی (http://manamsoft.ugig.ir/download/media/SQL-Wizard.swf) کمک بگیرید .

موفق باشید./

متوجهم کارایی که گفتید رو انجام دادم درسته موقع اجرای برنامه vb ویرایش میشه ذخیره هم میشه من میخواستم توی بانک access که باخود access روی ویندوز باز میشه هم تغییرات ذخیره بشه که نمیشه. تغییرات فقط تو خود بانک داخل vb اعمال میشه.
منظورم رو گرفتید؟مرسی از توجهتون.

Ali408
دوشنبه 26 تیر 1391, 11:21 صبح
سلام
دوست عزیز شما بهتر بود به جای ویزارد ازکد استفاده می کردید. برای اینکه هر بار که در دیتابیس تغییر ایجاد می کنید در دیتاگرید نمایش داده بشه باید هر بار که عمل خاصی رو انجام میدید اونو نشون بدید. مثلا فرض کنید نام جدولتون هست t1.

Dim Adapter As OledbDataAdapter
Dim DataSet As New DataSet

Adapter = New OleDbDataAdapter("SELECT * FROM T1", Connection)
Adapter.Fill(DataSet, "T1")

DataGridView1.DataSource = DataSet.Tables("T1")

alimanam
سه شنبه 27 تیر 1391, 15:38 عصر
با سلام


من میخواستم توی بانک access که باخود access روی ویندوز باز میشه هم تغییرات ذخیره بشه که نمیشه. تغییرات فقط تو خود بانک داخل vb اعمال میشه.

دوست عزیز شما رو به کمی تمرین فرا میخونم !!!! خوب دوست عزیز وقتی داری از روش ویزارد استفاده میکنی , هنگامی که میخوای بانک رو به برنامه اضافه کنی ازت میپرسه آیا مایل هستی یک کپی از بانک به پروژه اضافه بشه یا نه ! اگه Yes رو بزنی یه کپی از دیتابیس به برنامه شما ( در مسیر ذخیره شدن پروژه ) اضافه میشه ( عکس پست شماره 9 که فلش قرمز کشیدم ) وقتی شما این کار رو انجام بدی عملاً هرکاری که با دیتابیس انجام بدی در دیتابیس کپی برابر با اصل انجام میشه نه در دیتابیس اصلی ! بازم متذکر میشم بهتره کمی بیشتر مطالعه داشته باشید .

موفق باشید./