# پایگاه‌های داده > NoSQL >  درخواست معرفی یک پایگاه داده NoSql ساده برای اپلیکیشن های ویندوزی

## Parmida48

سلام خدمت اساتید و دوستان 
من قبلا برنامه هامو برمبنای پایگاهای رابطه ای نوشتم و میخواستم یک نمونه برای شروع با پایگاه داده NoSql کارکنم
از دوستان خواهش میکنم چند نمونه از این نوع پایگاه داده که استفاده کردن و شرایط زیر رو داشته باشه به من معرفی کنن:

1-رایگان باشه
2-کوچک باشه(مث SQLite)
3-نیاز به نصب سرور نداشته باشه
4-سریع باشه 
5-راحت باشه
6-ترجیحا Key-Value باشه
7-در محیطهای برنامه نویسی رایگان ، قابل کدنویسی باشه
8-قابل استفاده در ویندوز باشه

ممنونم

----------


## مبین رنجبر

> سلام خدمت اساتید و دوستان 
> من قبلا برنامه هامو برمبنای پایگاهای رابطه ای نوشتم و میخواستم یک نمونه برای شروع با پایگاه داده NoSql کارکنم
> از دوستان خواهش میکنم چند نمونه از این نوع پایگاه داده که استفاده کردن و شرایط زیر رو داشته باشه به من معرفی کنن:
> 
> 1-رایگان باشه
> 2-کوچک باشه(مث SQLite)
> 3-نیاز به نصب سرور نداشته باشه
> 4-سریع باشه 
> 5-راحت باشه
> ...


تعداد این دیتابیس ها خیلی زیاد است و هر کدام از آنها با اینکه اکثر معیارهایی را که میخواهید دارا می باشند ولی کمبودهایی نیز دارند. به طور مثال با اینکه UnQLite از دیتابیس هایی است که معیارهایی که میخواهید دارد ولی از اندیس گذاری پشتیبانی نمی کند. پایگاه های داده ای دیگری نیز هستند که موردی که عرض کردم در مورد اونها هم صدق میکنه. مثل WhiteDB و CouchbaseLite

----------


## Parmida48

> تعداد این دیتابیس ها خیلی زیاد است و هر کدام از آنها با اینکه اکثر معیارهایی را که میخواهید دارا می باشند ولی کمبودهایی نیز دارند. به طور مثال با اینکه UnQLite از دیتابیس هایی است که معیارهایی که میخواهید دارد ولی از اندیس گذاری پشتیبانی نمی کند. پایگاه های داده ای دیگری نیز هستند که موردی که عرض کردم در مورد اونها هم صدق میکنه. مثل WhiteDB و CouchbaseLite


آقای مهندس رنجبر مرسی از راهنمائیهای ارزشمندتون 
من هر سه دیتابیس رو بررسی کردم ، متاسفانه هر کدوم اشکال خودشو داشت
مثلا UnQLite ظاهرا فقط برای زبان C قابل استفاده است 
WhiteDB بااینکه نوشته برای لینوکس و ویندوز ولی روی صفحه فقط لینک فایلهای لینوکس هستش
CouchbaseLite هم ظاهرا بصورت نسخه مخصوص موبایل عرضه میشه

بنابر این با راهنمائیهای شما و کمی جستجو تونستم دیتا بیس LiteDB  را که بیشترین انطباق رو با پارامترهای من داشت پیدا کنم
این دیتا بیس هم بصورت کنسولی و هم بصورت DLLی قابل استفاده هست
تنها مشکل که برای شروع وجود داره اینه که من نمیتونم از طریق کنسول یک دیتابیس ایجاد کنم 
متاسفانه Help موجود هم خیلی خلاصه اس و هیچ فرمانی برای Create نداره !!!
ممکنه بنده رو راهنمائی بفرمایید ؟
ممنون از وقتی که میذارین 
پرهام

----------


## مبین رنجبر

> آقای مهندس رنجبر مرسی از راهنمائیهای ارزشمندتون 
> من هر سه دیتابیس رو بررسی کردم ، متاسفانه هر کدوم اشکال خودشو داشت
> مثلا UnQLite ظاهرا فقط برای زبان C قابل استفاده است 
> WhiteDB بااینکه نوشته برای لینوکس و ویندوز ولی روی صفحه فقط لینک فایلهای لینوکس هستش
> CouchbaseLite هم ظاهرا بصورت نسخه مخصوص موبایل عرضه میشه
> 
> بنابر این با راهنمائیهای شما و کمی جستجو تونستم دیتا بیس LiteDB  را که بیشترین انطباق رو با پارامترهای من داشت پیدا کنم
> این دیتا بیس هم بصورت کنسولی و هم بصورت DLLی قابل استفاده هست
> تنها مشکل که برای شروع وجود داره اینه که من نمیتونم از طریق کنسول یک دیتابیس ایجاد کنم 
> ...


خواهش میکنم. اتفاقا LiteDB رو بنده مشاهده کردم ولی چون به نسبت بقیه پروژه ها کمتر لینک داده شده بود معرفی نکردم. برای ساخت دیتابیس باید از دستور open mydb استفاده کنید. mydb اسم دیتابیسی که می خواهید ایجاد کنید است.

----------


## Parmida48

ضمن سلام خدمت جناب مهندس 
خیلی از شما سپاسگزارم
با راهنمائی شما  موفق به ساخت اولین دیتابیس شدم 
نکته جالب اینه که LiteDB از Index پشتیبانی میکنه
ولی گویا متاسفانه Cursor رو ساپورت نمیکنه که اگه میکرد چقدر عالی میشد
سوالی که برام پیش اومده اینه که :
چطور میشه از فایل DLL در Lazarus یا FreeQ استفاده کرد، مستندات فقط برای C#‎‎.Net موجوده و درمورد سایر زبانها چیزی ذکر نشده
اگه کمی منو رو راهنمائی بفرمائین ، بینهایت از شما ممنون خواهم شد
مرسی

----------


## مبین رنجبر

> ضمن سلام خدمت جناب مهندس 
> خیلی از شما سپاسگزارم
> با راهنمائی شما  موفق به ساخت اولین دیتابیس شدم 
> نکته جالب اینه که LiteDB از Index پشتیبانی میکنه
> ولی گویا متاسفانه Cursor رو ساپورت نمیکنه که اگه میکرد چقدر عالی میشد
> سوالی که برام پیش اومده اینه که :
> چطور میشه از فایل DLL در Lazarus یا FreeQ استفاده کرد، مستندات فقط برای C#‎‎‎.Net موجوده و درمورد سایر زبانها چیزی ذکر نشده
> اگه کمی منو رو راهنمائی بفرمائین ، بینهایت از شما ممنون خواهم شد
> مرسی


من با این دیتابیس کار نکردم ولی کدهارو که بررسی کردم دیدم Cursor در  کلاس StringScanner موجود است:  https://github.com/mbdavid/LiteDB/bl...ringScanner.cs

برای اضافه کردن DLL هم می توانید از کد زیر استفاده کنید:

function ExportedFunctionName(parameters):ResultType;cdecl;  external 'library.dll';

----------


## Parmida48

ممنونم
منظور من از Cursor پشتیبانی مستقیم از  First,Last,Prev,Next,Move برای جابجائی در لابلای رکوردها بود
بهر حال مرسی 
من نحوه استفاده از DLL رو چک کنم اگه سوالی بود مجددا مزاحم خواهم شد
Tanx

----------

