最初に「デバッガ用のローカル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>
作成されていないことをどのように知っていますか? – laalto