بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

مشکل ساخت دیتابیس

مدیریت گفتگو
Stark 10 سال پیش
آخرین تغییر: 10 سال پیش

سلام دوستان

من تو درست کردن دیتا بیس مشکل دارم و خیلی وقته دارم روش کار میکنم اما هنوز به جایی نرسیدم

از روی اموزش استاد کلاس G رو میسازم اما دیتا بیسم توی شبیه ساز ساخته نمیشه

از اندروید استودیو استفاده میکنم و شبیه سازم هم NOX هستش

ضمن اینکه یه کد دیگ رو ازمایش کردم دیتا بیسش ساخته میشه توی شبیه ساز ولی اینکه از روی اموزش استاد رفتم ساخته نمیشه

توی انجمن هم گشتم ولی چیزی دستگیرم نشد

ممنون میشم کمک کنید 

اینم کدهای کلاس G 

public class G extends Application {

public static Context context;
public static SQLiteDatabase database;
public static final String DIR_SDCARD = Environment.getExternalStorageDirectory().getAbsolutePath();
public static final String DIR_DATABASE = DIR_SDCARD + "/database-test/";


@Override
public void onCreate() {
super.onCreate();
context = this.getApplicationContext();

new File(DIR_DATABASE).mkdirs();

database = SQLiteDatabase.openOrCreateDatabase(DIR_DATABASE + "/database.sqlite", null);
database.execSQL("CREATE TABLE IF NOT EXISTS person (" +
"person_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE , " +
"person_name TEXT, " +
"person_family TEXT, " +
"person_age INTEGER" +
")");

/*
for (int i = 0; i < 20; i++) {
database.execSQL("INSERT INTO person (person_name,person_family,person_age)
VALUES ('Name#" + i + "','Family#" + i + "'," + i + ")");
}
*/

Cursor cursor = database.rawQuery("SELECT * FROM person WHERE person_age>10", null);
while (cursor.moveToNext()) {
String name = cursor.getString(cursor.getColumnIndex("person_name"));
String family = cursor.getString(cursor.getColumnIndex("person_family"));
int age = cursor.getInt(cursor.getColumnIndex("person_age"));
Log.i("LOG", "Record: " + name + " " + family + ", " + age);
}
cursor.close();

database.execSQL("DELETE FROM person WHERE person_age>10");
database.execSQL("UPDATE person SET person_name='test' WHERE person_age>7");
}
}

نظرات

MeY3am 10 سال پیش
قبل از اینکه کدتون رو چک کنم گفتم مهم ترین نکته رو بهتون بگم، دسترسی ها یا همون پرمیشن های مربوط به خواندن و نوشتن در حافظه داخلی در فایل منیفست رو نوشتید یا نه؟
MeY3am 10 سال پیش
درضمن اون کوئری مربوط به DELETE و UPDATE رو کامنت کنید !
k112 10 سال پیش
از دو تا اسلش (/) استفاده کردی ....
Stark 10 سال پیش
میثم جان اجازه دسترسی رو هم توی منیفست داده بودم بهش و اون دوتا خط رو هم کامنت کردم بازم نشد! K112..کجا دوتا اسلش گذاشتم؟
ابراهیم 10 سال پیش
اون قسمتی که متغیر DIR_DATABASE را تعریف کردید بعد از test یک اسلش اضافه گذاشتید.
Stark 10 سال پیش
ممنون اقا ابراهیم که جواب میدین.. اسلش رو برداشتم بازم ساخته نشد .توی اموزش استاد هم اسلش وجود داره!

پاسخ‌ها 1

Stark 10 سال پیش

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

و همینطور همیشه به آیکون برنامه گیر میده که من کلش رو پاک میکنم

نظرات

Stark 10 سال پیش
مشکل کلاس G حل شد...جای تعریفش اشتباه بود بردمش تو Application :|
MeY3am 10 سال پیش
کلاس G در فایل منیفست رو همیشه فقطو فقط بعد از تگ باز application تعریف کنید یعنی اولین إلمانِ تگ اپلیکیشن باشه !
MeY3am 10 سال پیش
آیکون برنامه هم باید در نوشتن نامش دقت کامل رو داشته باشی که خطا نده !
Stark 10 سال پیش
نمیدونم مشکل چیه ولی پروژه جدید میسازم یا قبلیا رو باز میکنم ایکون برنامه ارور داره!! :(
Stark 10 سال پیش
نمیدونم مشکل چیه ولی پروژه جدید میسازم یا قبلیا رو باز میکنم ایکون برنامه ارور داره!! :(
ابراهیم 10 سال پیش
دستوری ست کردن ایکون را یک بار پاک کن دوباره تعریف کن ببین وقتی که auto complete میده نام را درست وارد کردی چون اپ نیم را با رنگ سبز نشون می ده تو تم دراکولا که یعنی شناخته منتها در مورد ایکون با اینکه عکس را سمت چپ نشون داده منتها انگار کامل نشناخته چون رنگش سفید.
MeY3am 10 سال پیش
اون mipmap چیه.... اونو به drawable تغییر بده، عکس رو هم به همین پوشه drawable انتقال بده درست میشه!
Stark 10 سال پیش
اخه هر پروژه ای ک میسازم کلا از اول ایکون ها داخل mipmap و داخل پوشه ic_luncher هستن
Spirit 10 سال پیش
فولدر های mipmap برای قرار دادن آیکون های برنامه هستن، پیشنهاد پاک کردنشون درست نیست، چراش رو میتونید اینجا بخونید لینک .
MeY3am 10 سال پیش
اسپریت جان من فکرکردم از اکلیپس استفاده میکنه، بعدأ فهمیدم که محیط اندروید استودیو هستش !

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .