2013-04-07 3 views
0

Я попытался создать базу данных в sqlite..but ее не создавая.Проблема создания базы данных Sqlite

Проводник файлов не показывает в нем никакой папки базы данных.

Можно ли обнаружить какую-либо ошибку в ниже данного кода

public DatabaseHelper(Context context) { 

    super(context, databasename, null, databaseversion); 
    Log.d("DatabaseHelper", "Reached Database helper"); 
    mContext = context; 
} 

@Override 
public void onCreate(SQLiteDatabase db) { 
    String CREATE_MASTER_TABLE = "CREATE TABLE " + table_reminder_master 
      + "(" + MASTER_ID + " INTEGER PRIMARY KEY ," + MASTER_TITLE 
      + " TEXT," + MASTER_CONTACT_ID + " INTEGER," + MASTER_EMAIL_ID 
      + " INTEGER," + MASTER_TYPE_ID + " INTEGER," + ")"; 
    db.execSQL(CREATE_MASTER_TABLE); 
    Log.d("Table Create", "The table is created"); 
    Toast.makeText(mContext, "Created", Toast.LENGTH_LONG).show(); 

    String CREATE_CONTACT_TABLE = "CREATE TABLE " + table_contactDetails 
      + "(" + CONTACT_ID + " INTEGER PRIMARY KEY ," + CONTACT_NAME 
      + " TEXT," + ")"; 
    db.execSQL(CREATE_CONTACT_TABLE); 
} 

Вызывающий класса

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    db = new DatabaseHelper(this); // instantiation of database helper 
    initializerMethod(); 
    reminder=new Reminder_Master(); 
    contact=new Contact_Details(); 
    Log.d("Main Acitivity", "Message"); 
    btnSave.setOnClickListener(saveHandler); 
    } 

Любая оцененная помощь

+0

Вы не можете видеть db в проводнике файлов. Это видно только в приложении. Можете ли вы вставить и прочитать что-нибудь? – vandzi

ответ

1

Вы получили синтаксическую ошибку в ваших обоих создания запросов:

+ " INTEGER," + MASTER_TYPE_ID + " INTEGER," + ")"; 

и

+ " TEXT," + ")"; 

это , до ) там быть не должно.

Вы должны были проверить logcat, поскольку такие ошибки заканчиваются тем, что исключение выбрано и зарегистрировано.

+0

Исправлена ​​ошибка синтаксиса, но все же ... никаких признаков создания базы данных ... да, я даже держу дорожку в logcat .. это не показывает мне никакой ошибки или не отображает записи log.d, помещенные в метод onCreate на DatabaseHelper –

+0

@AbhijeetSonawane 'onCreate' не будет вызываться, если файл DB уже существует. –

+0

@CL. Я попытался несколько раз, изменив версию базы данных. Так что я думаю, что после изменения версии базы данных таблица должна быть воссоздана. –

0

Недостаточно просто создать DatabaseHelper. Вы должны позвонить getReadableDatabase() или getWriteableDatabase(). Обязательно сделайте это в фоновом потоке, так как вы не хотите делать операции ввода/вывода на диске в основном потоке приложения.

Смежные вопросы