2017-06-08 19 views
1

私はアンドロイドアプリケーションデータベースの中に非常に単純なテーブルを作成しています。奇妙なことが起きましたが、私の誤りを見つけることはできません。SQLiteは二重列_idを作成します

私は私のAndroidアプリのデータベースをanalizeとき、あなたはデータベースを「扱う」というクラスを参照してくださいすることができ、ここで画像に enter image description here

を見ることができるように、私のテーブル内の2列_idが、あります。

public class ContactsDAO extends SQLiteOpenHelper { 

    public ContactsDAO(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) { 
     super(context, DB_NAME, factory, DB_VERSION); 

    } 

    @Override 
    public void onCreate(SQLiteDatabase sqLiteDatabase) { 
     try { 
      String createQuery = "CREATE TABLE my_contact(_id integer primary key autoincrement, contact_uri text)"; 
      sqLiteDatabase.execSQL(createQuery); 
     } 
     catch(Exception e){ 
      e.printStackTrace(); 
     } 
    } 

    @Override 
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1){} 

    public void add(MyContact myContact){ 
     ContentValues contentValues = new ContentValues(); 
     contentValues.put(contact_uri, "uriiiiiiiii"); 
     SQLiteDatabase database = this.getWritableDatabase(); 
     database.insert(my_contact, null, contentValues); 
     database.close(); 
    } 
} 

Thank in advance. 

ユーザCLとして溶液

によれば、ツールのエラーです。私はテーブルADB使用してテーブルをチェックした場合は正しいです、あなたはこの画像で

enter image description here

+0

ツールのエラーです。テーブルをチェックするためにADBを使用する場合、私はちょうど_id列にあります。ありがとうございます – MDP

答えて

4

を見ることができるように、同じ名前を持つ2つの列を持ってすることはできません。

データベースに問題はありません。その "Developer Tools"ウィンドウの表示が間違っています。

+0

あなたは正しいです。テーブルをチェックするためにADBを使用する場合、私はちょうど_id列にあります。 ありがとう – MDP

関連する問題