دستور زیر را به فایل build.gradle پروژه خود اضافه کنید و اجازه دهید اندروید استودیو کتابخانه را دانلود نماید.
compile 'com.github.satyan:sugar:1.5'
تنظیمات برای استفاده
تگهای meta را به صورت زیر در تگ application موجود در منیفست اضافه کنید.
<meta-data android:name="DATABASE" android:value="sugar_example.db" />
<meta-data android:name="VERSION" android:value="2" />
<meta-data android:name="QUERY_LOG" android:value="true" />
<meta-data android:name="DOMAIN_PACKAGE_NAME" android:value="com.example" />
توضیحات تگ ها به شرح زیر می باشد
توضیحات |
داده تگ |
نام فایل دیتابیس که میخوایید ایجاد بشود را وارد کنید |
DATABASE |
نسخه دیتابیس |
VERSION |
لاگ برداری از اعمال داخل دیتابیس |
QUERY_LOG |
پکیج نیم اصلی |
DOMAIN_PACKAGE_NAME |
نحوه استفاده
برای دیتا های خود مدل یا همان کلاس ساختار داده تعریف کنید و از SugarRecord مشتق کنید. به شکل زیر
public class Book extends SugarRecord {
String title;
String edition;
public Book(){
}
public Book(String title, String edition){
this.title = title;
this.edition = edition;
}
}
استفاده از عملیات ساده دیتابیس
برای Insert به دیتابیس بصورت زیر استفاده می شود
Book book = new Book("Title here", "2nd edition")
book.save();
برای Select داده بصورت زیر استفاده کنید.
Book book = Book.findById(Book.class, 1);
برای Update داده در دیتابیس یصورت زیر عمل می کنیم.
Book book = Book.findById(Book.class, 1);
book.title = "updated title here"; // modify the values
book.edition = "3rd edition";
book.save(); // updates the previous entry with new values.
برای Delete داده از دیتابیس بصورت زیر عمل می کنیم.
Book book = Book.findById(Book.class, 1);
book.delete();
برای دستور Select با شرط بصورت زیر استفاده می کنیم.
List<Book> books = Book.find(Book.class, "author = ?", new String{author.getId()});
برای دستور Select * بصورت زیر عمل کنید.
List<Book> books = Book.listAll(Book.class);
برای انجام DELETE بر روی تمامی داده ها بصورت زیر عمل می کنیم.
Book.deleteAll(Book.class);
برای پیاده سازی رابطه ها در جدول ها بصورت مثال زیر عمل می کنیم.
public class Author extends SugarRecord {
String name;
public Author() {}
// Get all books of this author
List<Book> getBooks() {
return Book.find(Book.class, "author = ?", new String{getId()})
}
}
کلاس Book را بصورت زیر آپدیت می کنیم.
public class Book extends SugarRecord {
String name;
String ISBN;
String title;
String shortSummary;
// defining a relationship
Author author;
}
در مثال بالا رابطه یک به چند را پیاده سازی کردیم.
شما باید قبل از ذخیره داده Book داده Author را ذخیره کنید.
برای لود داده بصورت رابطه ای بشکل زیر عمل می کنیم.
Book book = Book.findById(Books.class, 1);
Author author = book.author;
این آموزش ادامه دارد... بخش QueryBuilder در قسمت دوم ارائه خواهد شد.