2016-10-06 21 views
1

最初に「デバッガ用のローカル8600にビルドできません」というメッセージが表示されたら、jreバージョンを7から8に更新すると、 「デバイスがローカルのディスク上のビルドと一致しません」というメッセージが表示されます。その後、メッセージは表示されずにコードが実行されますが、データベースは作成されません。ここに私のmainclassがアンドロイドスタジオでは、sqliteデータベースは作成されていませんが、私のコードにエラーはありません

が ここ

package com.kaizen.sqlitedatabase; 

import android.database.sqlite.SQLiteDatabase; 
import android.database.sqlite.SQLiteOpenHelper; 
import android.support.v7.app.ActionBarActivity; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 
import android.widget.Toast; 

public class MainActivity extends AppCompatActivity{ 
    Sqlite mydb; 
    TextView name,surName,marks; 
    EditText edtName,edtSurName,edtMarks; 
    Button button; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     mydb=new Sqlite(this); 

     name=(TextView)findViewById(R.id.name); 
     surName=(TextView)findViewById(R.id.surName); 
     marks=(TextView)findViewById(R.id.marks); 
     edtName=(EditText)findViewById(R.id.edt_name); 
     edtSurName=(EditText)findViewById(R.id.edt_surName); 
     edtMarks=(EditText)findViewById(R.id.edt_marks); 
} 
} 

はsqliteのopenhelperの私のサブクラスである、誰かが私に

package com.kaizen.sqlitedatabase; 

import android.content.ContentValues; 
import android.content.Context; 
import android.database.sqlite.SQLiteDatabase; 
import android.database.sqlite.SQLiteOpenHelper; 

/** 
* Created by Naveen on 05-10-2016. 
*/ 

public class Sqlite extends SQLiteOpenHelper{ 
    public static final String DATABASENAME="STUDENTS_DATABASE.db"; 
    public static final String TABLENAME="STUDENTS_MARKS"; 
    public static final String COL_1="ID"; 
    public static final String COL_2="STUDENT_NAME"; 
    public static final String COL_3="SUR_NAME"; 
    public static final String COL_4="MARKS"; 

    public Sqlite(Context context) { 
     super(context, DATABASENAME, null, 1); 
     SQLiteDatabase db=this.getWritableDatabase(); 
    } 

    @Override 
    public void onCreate(SQLiteDatabase db) { 
     db.execSQL("CREATE TABLE " + TABLENAME +" (ID INTEGER PRIMARY KEY AUTOINCREMENT,NAME TEXT,SURNAME TEXT,MARKS INTEGER) "); 

    } 

    @Override 
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
     db.execSQL("DROP TABLE IF EXISTS "+TABLENAME); 
     onCreate(db); 

    } 
} 

を助けてください。これは、私のxmlファイルで、ある

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/activity_main" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context="com.kaizen.sqlitedatabase.MainActivity" 
    android:orientation="vertical"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="60dp" 
     android:orientation="horizontal"> 

     <TextView 
      android:layout_width="150dp" 
      android:layout_height="match_parent" 
      android:text="Name" 
      android:id="@+id/name" /> 
     <EditText 
      android:layout_width="fill_parent" 
      android:layout_height="match_parent" 
      android:layout_marginLeft="10dp" 
      android:id="@+id/edt_name" /> 


    </LinearLayout> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="60dp" 
     android:orientation="horizontal"> 

     <TextView 
      android:layout_width="150dp" 
      android:layout_height="match_parent" 
      android:id="@+id/surName" 
      android:text="Sur Name" /> 
     <EditText 
      android:layout_width="fill_parent" 
      android:layout_height="match_parent" 
      android:layout_marginLeft="10dp" 
      android:id="@+id/edt_surName" /> 


    </LinearLayout> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="60dp" 
     android:orientation="horizontal"> 

     <TextView 
      android:layout_width="150dp" 
      android:layout_height="match_parent" 
      android:id="@+id/marks" 
      android:text="Marks" /> 
     <EditText 
      android:layout_width="fill_parent" 
      android:layout_height="match_parent" 
      android:layout_marginLeft="10dp" 
      android:id="@+id/edt_marks" /> 


    </LinearLayout> 

    <Button 
     android:text="Add" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:id="@+id/button" 
     android:layout_marginTop="60dp" 
     /> 

</LinearLayout> 
+1

作成されていないことをどのように知っていますか? – laalto

答えて

0

テーブルを作成するには、このクエリを使用し、私はあなたの質問に問題があると思う。

String CREATE_TABLE_CITY = "CREATE TABLE " + TABLE_NAME + "(" + ID + " INTEGER PRIMARY KEY , " + NAME+ " TEXT, " + SURNAMENAME+ " TEXT, " + MARKS+ " INTEGER)"; 

mDatabase.execSQL(CREATE_TABLE_CITY); 
0

あなたのデータベースを確認したいが、左のデバイス上で、その後行く...

ツール>アンドロイド> Androidデバイスモニタに

クリックを作成するかではありません。

ゴーはちょうどそれをクリックすることで、データベースを選択し、エクスプローラ(右のタブのいずれかを)ファイル/データ/データ/データベース

に移動します。

関連する問題