View Full Version : سوال: بانک اطلاعاتی پرتاپل
1072300
شنبه 20 آبان 1391, 21:26 عصر
سلام
دو سوال دارم:
1. بهترین بانک اطلاعاتی پرتابل(می خواهم برنامه بدون نصب به طور کامل اجرا شود ) برای دلفی کدام است؟
2. به چه صورت می توانم فایل وب مثل ( html, mht, mhtml, php و....) را در بانک اطلاعاتی پرتاپل بریزم؟
با تشکر
mohsen24000
شنبه 20 آبان 1391, 21:32 عصر
بهترین بسته به نیاز شما تعریف میشه!
ولی DBISam,SQLite,AbslouteDB از بانک های پرتابل هستند.
مواردی که گفتید بیشتر متن هستند و در یک فیلد از نوع memo میشه نگهداری کرد.
ModernEX
شنبه 20 آبان 1391, 21:36 عصر
1 . از XMl استفاده کنید
2 . شاید بشه از Chm استفاده کرد
سعید صابری
شنبه 20 آبان 1391, 22:30 عصر
البته Mysql همه گزينه مناسبي براي پرتابل است نسخه پرتابلش حجم زيادي نداره.
mohsen24000
شنبه 20 آبان 1391, 22:48 عصر
نسخه پرتابلش حجم زيادي نداره.
باعرض ارادت:لبخندساده:
یعنی چی حجم زیادی نداره...
وقتی قراره بانک پرتابل باشه دیگه نباید وابسته به Engine باشه حالا میخواد حجمش کم باشه یا زیاد!
اون SQLite هم نهایتا یه DLL داره که نه نیازی به نصب داره و نه رجیستر...
کامروا
یک شنبه 21 آبان 1391, 08:35 صبح
باعرض ارادت:لبخندساده:
یعنی چی حجم زیادی نداره...
وقتی قراره بانک پرتابل باشه دیگه نباید وابسته به Engine باشه حالا میخواد حجمش کم باشه یا زیاد!
اون SQLite هم نهایتا یه DLL داره که نه نیازی به نصب داره و نه رجیستر...
منظور آقای صابری نسخه Embedded بودش که نیازی به Engine نداره.
و با چندتا DLL کار میکنه...
BORHAN TEC
یک شنبه 21 آبان 1391, 11:09 صبح
سلام
چند تا موضوع رو باید قبل از انتخاب DBMS مورد نظر مورد توجه قرار دهید.
1- آیا برنامه ای که میسازید بعداً ممکن است که بخواهید آنرا به نسخه سرور انتقال دهید؟ اگر اینگونه است من Firebird را پیشنهاد می کنم که هم نسخه Embaded داره و هم Server. این گزینه برای حالاتی بهتر است که می خواهید برنامه شما در نسخه های مختلف تک کاربره و چند کاربره باشد به گونه ای که بتوان بدون کوچکترین زحمتی برنامه تک کاربره را به برنامه چند کاربره تحت شبکه ارتقا داد. FireBird این قابلیت را به خوبی دارا است و طبیعی است که شما باید ساختار پایگاه داده را از همان اول طوری طراحی کنید که هم به صورت تک کاربره و هم به صورت چند کاربره قابل استفاده باشد.
2 - آیا برنامه همیشه به صورت تک کاربره باقی خواهد ماند؟ اگر اینگونه است می توانید از Sqlite استفاده کنید.
موفق باشید...
mohsen24000
یک شنبه 21 آبان 1391, 11:29 صبح
سلام
1- آیا برنامه ای که میسازید بعداً ممکن است که بخواهید آنرا به نسخه سرور انتقال دهید؟ اگر اینگونه است من Firebird را پیشنهاد می کنم که هم نسخه Embaded داره و هم Server. این گزینه برای حالاتی بهتر است که می خواهید برنامه شما در نسخه های مختلف تک کاربره و چند کاربره باشد به گونه ای که بتوان بدون کوچکترین زحمتی برنامه تک کاربره را به برنامه چند کاربره تحت شبکه ارتقا داد. FireBird این قابلیت را به خوبی دارا است و طبیعی است که شما باید ساختار پایگاه داده را از همان اول طوری طراحی کنید که هم به صورت تک کاربره و هم به صورت چند کاربره قابل استفاده باشد.
موفق باشید...
علاوه بر توضیح فوق، اشاره کنم به این مهم که AbslouteDbase هم به همین صورت MultiUser بوده و قابلیت خیلی جالبی هم که در خصوص چندکاربره داره :
Multi-User
Zero-admin file-server
Automatic record and table locking
Automatic detection of changes made by other users
Configurable limit of concurrent connections
Easy switching between single-user and multi-user mode
Full transactions support with ReadCommited isolation level
کامروا
یک شنبه 21 آبان 1391, 12:57 عصر
هم با MySql Embedded کار کردم و هم با FireBird Embedded
ولی انصافا کار با FireBird خیلی راحت تر بود.
تصمیم گرفتم واسه کارای تک کاربره از FB استفاده کنم
Mask
یک شنبه 21 آبان 1391, 16:34 عصر
منم یه نظر بدم:خجالت:
زیاد با AbslouteDB حال نکردم. چون با کوئریش نمیشد هم کوئری گرفت و هم اینسرت انجام داد. من خیلی مشکل داشتم با هاش.
کامروا
یک شنبه 21 آبان 1391, 16:41 عصر
بفرمایید :
http://www.firebirdsql.org/en/firebird-2-5-1/
BORHAN TEC
یک شنبه 21 آبان 1391, 17:58 عصر
سلام
اینجور که تو سایتش نوشته واسه 32 و 64 باید فایل جدا گانه دریافت کرد.
اگه اشتباه نکنم پارسال هم یه همچین اشتباه مشابهی در مورد فایلهای Open SSL داشتید و اونجا هم در این مورد به خودتان توضیح دادم. در این موارد چند تا قانون کلی وجود داره که باید به اونها توجه کنی. فرض را هم بر این میگیرم که سیستم عامل مقصد ما Windows است.
قوانین:
قانون اول- 32 و یا 64 بیت بودن برنامه ای که ما میسازیم به کامپایلری بستگی دارد که ما برنامه خود را با آن کامپایل کرده ایم. توجه داشته باشید که نسخه های قدیمی دلفی فاقد کامپایلر 64 بیتی هستند و کامپایلر 64 بیتی از نسخه Delphi XE2 به دلفی اضافه شده است.
قانون دوم- اگر برنامه خود را به صورت 32 بیت کامپایل کرده باشیم برنامه ما فقط می تواند از dll هایی که به صورت 32 بیت کامپایل شده اند استفاده کند. یعنی اگر برنامه 32 بیتی ما به dll هایی وابسته باشد، همه آن dll ها باید 32 بیت باشند.
قانون سوم- اگر برنامه خود را به صورت 64 بیت کامپایل کرده باشیم برنامه ما فقط می تواند از dll هایی که به صورت 64 بیت کامپایل شده اند استفاده کند. یعنی اگر برنامه 64 بیتی ما به dll هایی وابسته باشد، همه آن dll ها باید 64 بیت باشند.
قانون چهارم- ما هم ویندوز 32 بیتی داریم و هم 64 بیتی. البته بعدها ممکن است گزینه های دیگری هم به این لیست اضافه شود. البته ویندوز 16 بیتی هم داریم ولی مربوط به نسخه های فسیل شده ویندوز هستند که همه آنها به کلی منسوخ شده اند.
قانون پنجم- برنامه های 32 بیتی قابلیت اجرا در ویندوز های 32 و 64 بیتی را دارند.
قانون ششم- برنامه های 64 بیتی قابلیت اجرا در ویندوز های 32 بیتی را ندارند.
پس با استناد به قوانین بالا این برداشت شما کاملاً اشتباه است. :قلب: اگه بازم مشکل داشتی بهم زنگ بزن تا تلفنی برات توضیح بدم. فکر می کنم که توی بخش دلفی فقط خواجه حافظ شیرازی شماره من رو نداره! :لبخندساده:
موفق باشید...
Mask
یک شنبه 21 آبان 1391, 18:19 عصر
ممنون اینایی رو که فرمودید تا حدودی میدونستم.
من فکر کردم بر روی ویندوزهای 64 بیت ، حتما باید نسخه های 64 بیت FireBird رو اجرا کرد.
ممنون از راهنماییتون.
Felony
یک شنبه 21 آبان 1391, 18:29 عصر
منم یه نظر بدم:خجالت:
زیاد با AbslouteDB حال نکردم. چون با کوئریش نمیشد هم کوئری گرفت و هم اینسرت انجام داد. من خیلی مشکل داشتم با هاش.
والا ما بارها این کار رو کردیم ، قبل از Insert باید بانک رو از حالت Readonly خارج کنی :
ABSQuery1.ReadOnly:= False;
ABSQuery1.Insert;
ABSQuery1.FieldByName('Test').AsString:= 'Test';
ABSQuery1.Post;
Mask
یک شنبه 21 آبان 1391, 18:32 عصر
والا ما بارها این کار رو کردیم ، قبل از Insert باید بانک رو از حالت Readonly خارج کنی :
ABSQuery1.ReadOnly:= False;
ABSQuery1.Insert;
ABSQuery1.FieldByName('Test').AsString:= 'Test';
ABSQuery1.Post;
باید تست کنم.
1072300
یک شنبه 21 آبان 1391, 22:06 عصر
از همگی سپاسگزارم:خجالت::تشویق:
اما به نظرم کار سخت شد. گزینه های زیادی پیش پایم قرار گرفت.بنده بانک اطلاعاتی پرتاپلی می خوام که حدود 400 صفحه عکس و متن و حدود 100 صفحه از فایل های مختلف وب را در داخلش نگهداری کنم و از همه مهم تر امنیتش عالی باشه و اگر بتونم صدا و فیلم را داخلش بریزم که عالی می شه.
mohsen24000
دوشنبه 22 آبان 1391, 00:11 صبح
بنده تجربه کار با FiB رو ندارم، ولی تمام خواسته های شما توسط Absolute Database (http://componentace.com/bde_replacement_database_delphi_absolute_database. htm) تأمین میشه بعلاوه چندکاربره بودن!
چون خودم بخاطر امنیت و نگهداری فایلها در این بانک از عملکردش راضی هستم.
1072300
دوشنبه 22 آبان 1391, 20:36 عصر
امکان داره در مورد این بانک اطلاعاتی (ABSlouteDB )بیشتر توضیح دهید در اینترنت چیزی پیدا نکردم.
mohsen24000
دوشنبه 22 آبان 1391, 21:40 عصر
امکان داره در مورد این بانک اطلاعاتی (ABSlouteDB )بیشتر توضیح دهید در اینترنت چیزی پیدا نکردم.
http://www.componentace.com/bde_replacement_database_delphi_absolute_database. htm
لینک نسخه کامل هم پی ام شد...
1072300
چهارشنبه 24 آبان 1391, 22:23 عصر
از همه سپاسگزارم اما یک مشکل دیگه دارم فایل های وب را به چه صورت در بانک اطلاعاتی دخیره کنم.
mohsen24000
چهارشنبه 24 آبان 1391, 22:56 عصر
اگه منظورتون از فایلهای وب، فایلهای Html و CSS و امثال اینهاست. میتونید در یک فیلد memo ذخیره کنید و اگه تصویر و ... در فیلد Blob.
1072300
جمعه 26 آبان 1391, 23:24 عصر
سلام
بین استفاده از این سه بانک سردرگم شدم
1. SQLLite
2.FireBird
3.Mysql
حجم بانکم به حدود یک گیگابایت می رسد و فقط می خوام در این بانک فایل html و mhtml را دخیره کنم.
که به پیشنهاد اساتید باید از یک فیلد از نوع memo برای دخیره استفاده کنم. به نظر شما کدام بانک از همه بهتر است از نظر امنیت و قدرت و همچنین پرتابل بودنش.
متشکرم
1072300
جمعه 17 آذر 1391, 16:59 عصر
Mysql پرتابل را از کجا می تونم دانلود کنم؟
سعید صابری
شنبه 18 آذر 1391, 21:35 عصر
از سایتش نسخه non-instal. دقت کنید که همه فایل را نیاز نیست همراه برنامه تون جا به جا کنید
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.