PDA

View Full Version : ایجاد کردن بانک اکسس



مجتبی جوادی
چهارشنبه 07 آذر 1386, 20:54 عصر
دوستان سلام
من یک کامپوننت دارم که با آن می شود بانک اکسس ایجاد کرد . می خواستم بدانم آیا بدون استفاده از این کامپوننت هم می شود بانک اکسس را به همراه جداول مورد نیاز ایجاد کرد .
با تشکر

Mahmood_M
چهارشنبه 07 آذر 1386, 21:12 عصر
با سلام
با استفاده از ADO و دستورات SQL می تونید این کار رو انجام بدید ...
این مقاله (http://barnamenevis.org/forum/showthread.php?t=78621) تقریبا در همین زمینه هست که یک برنامه نمونه هم توش گذاشتم ...

توی این مقاله نحوه انتقال اطلاعات از یک بانک پارادکس به بانک اکسس توضیح داده شده ...
دانلود کنید ، و برنامه نمونه رو نگاه کنید ، امیدوارم مشکلتون رو حل کنه ...

موفق باشید ..

مجتبی جوادی
پنج شنبه 08 آذر 1386, 01:08 صبح
آقا محمود از لطف شما متشکرم
در برنامه شما اولا باید یک بانک اکسس به نام 1 وجود داشته باشد و دوم اینکه اطلاعات بانک پاراداکس را به جداول اکسس انتقال می دهد . ولی من می خواهم ابتدا خود بانک توسط دلفی ایجاد شده و جداول مورد نیاز هم به آن اضافه گردد .
با تشکر

Mahmood_M
پنج شنبه 08 آذر 1386, 14:48 عصر
در مقاله ای که لینکش رو بهتون دادم ، فقط از یک فایل MDB استفاده شده ، یعنی جداول به صورت جدا ساخته میشن و بعد در فایل ذخیره میشن ...

به هر حال اگر با ADO بخواید این کار رو انجام بدید نیاز به یک فایل برای ارتباط با Connection هست ...
تنها چیزی که نیاز هست همون فایل هست ، میتونید اون فایل رو همراه برنامه به صورت موقت جایی کپی کنید و هر بار قبل از ساختن جدول اون رو به مسیر مقصد کپی کرده و جداول رو توش بریزید ...

موفق باشید ...

مجتبی جوادی
جمعه 09 آذر 1386, 20:38 عصر
آقا محمود اگر بخواهم بانک را جایی کپی کنم ، جداولش را هم درون آن قرار می دهم !
یعنی هیچ دستوری برای ایجاد یک فایل اکسس وجود ندارد ؟

Mahmood_M
جمعه 09 آذر 1386, 22:58 عصر
آقا محمود اگر بخواهم بانک را جایی کپی کنم ، جداولش را هم درون آن قرار می دهم !
اول یک فایل MBD بسازید که فاقد جدول یا هر چیز دیگه باشه ...
بعد اون رو همراه پروژه در کامپیوتر کاربر کپی کنید ، یعنی جایی قرار بدید که مثلا کاربر نتونه اون رو ببینه یا نتونه تشخیص بده یا مثلا پسوندش رو عوض کنید یا ...
توجه کنید که آدرس محلی که اونجا کپی کردید رو در جایی ذخیره کنید ( مثلا رجیستری یا یک فایل INI ) تا هر بار بتونید اون رو پبدا کنید ...
توی راهی که بهتون معرفی کردم ، جداول به وسیله یک ADOCommand و دستورات SQL ساخته میشن ، و ADOConnection برای این که عمل کنه باید به یک ADOConnection و یک فایل بانک اطلاعاتی وصل باشه ...
پس هر موقع که خواستید جدول جدیدی بسازید، اول آدرس فایل کپی شده رو به یک ADOConnection بدید و اون رو Connect کنید و ADOCommand مورد نظر رو بهش ارتباط بدید ، بعد باید دشتورات مربوط به ساخت جدول رو در ADOCommand اجرا کنید ، با این کار جداول در همون فایل ساخته میشن ، بعد از این کار مثلا میتونید از کاربر یک مسیر بخواید برای ذخیره جدول و فایل ساخته شده ... و بعد از انتخاب کاربر و مشخص شدن مسیر اصلی ، فایلی که به صورت موقت کپی کرده بودید و جداول رو درونش گزاشته بودید رو به مسیر اصلی ( که کاربر مشخص کرده ) انتقال بدید یا کپی کنید ...

راه حل کاملا مطمئنی نیست اما عملی و مفید هست ...

موفق باشید ...

مجتبی جوادی
جمعه 09 آذر 1386, 23:34 عصر
آقا محمود از لطف شما متشکرم
اجازه بدهید دقیقتر توضیح بدهم که چه کار می خواهم بکنم .
من یک برنامه دارم که وقتی نصب می شود بانک اکسس خود را با نام کاربر اولیه نصب می کند . حال می خواهم با اضافه شدن هر کاربر جدید ، یک بانک جدید برای آن کاربر ایجاد شود و هر کاربر از بانک خود استفاده کند .
من کد آن را در داخل اکسس می دانم حالا شما اگر کمک کنید که من آن کد را چگونه در دلفی صدا بزنم مشکل من حل می شود .
با تشکر

merced
جمعه 09 آذر 1386, 23:49 عصر
یه جدول تو یه بانک داری که نام های کاربری و اسم بانکش رو ذخیره کنه.
وقتی یه کاربر جدید اضافه میشه از یه بانک خالی یه کپی یه گوشه می گیری (دستور فایل کپی رو پیدا کن) حالا مسیر اون گوشه (اسم بانک جدیده) رو بذار تو بانک اولیه که واسه همه مشترک هست.
هر وقت کاربری لاگین میکنه .... ConnectionString میشه همون فیلدی که مسیر ذخیره کرده ...

مجتبی جوادی
جمعه 09 آذر 1386, 23:58 عصر
دوستان ممنون
مشکل من حل شد
http://barnamenevis.org/forum/showthread.php?t=37747&highlight=%DA%A9%D8%AF+%D8%A7%DA%A9%D8%B3%D8%B3