安卓mysql插入数据_【11-25求助】关于Android 的SQLite数据库插入数据报错问题
該樓層疑似違規(guī)已被系統(tǒng)折疊?隱藏此樓查看此樓
運(yùn)行程序,不知道為何點(diǎn)插入數(shù)據(jù)按鈕會(huì)報(bào)錯(cuò),請(qǐng)萬能的吧友幫我看看,謝謝,不廢話,直接上代碼
MainActivity.java
package com.example.activity16;
import android.support.v7.app.ActionBarActivity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends ActionBarActivity {
private Button createButton;
private Button upDatabaseButton;
private Button insertButton;
private Button updateButton; //聲明
private Button queryButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
createButton =(Button)findViewById(R.id.createButton);
upDatabaseButton=(Button)findViewById(R.id.upDatabaseButton);
insertButton=(Button)findViewById(R.id.insertButton); //聲明
updateButton=(Button)findViewById(R.id.updateButton);
queryButton=(Button)findViewById(R.id.queryButton);
createButton.setOnClickListener(new CreateListener());
upDatabaseButton.setOnClickListener(new UpDatabaseListener());
insertButton.setOnClickListener(new InsertListener());
updateButton.setOnClickListener(new UpdateListener());
queryButton.setOnClickListener(new QueryListener());
}
class CreateListener implements OnClickListener{
@Override
public void onClick(View v) {
DatabaseHelper dbHelper=new DatabaseHelper(MainActivity.this,"tom_db", null, 1);
SQLiteDatabase db=dbHelper.getReadableDatabase();
//只用調(diào)用了這個(gè)方法,才會(huì)創(chuàng)建,打開數(shù)據(jù)庫
}
}
class UpDatabaseListener implements OnClickListener{
@Override
public void onClick(View v) {
DatabaseHelper dbHelper =new DatabaseHelper(MainActivity.this, "tom_db", null, 2);
SQLiteDatabase db =dbHelper.getWritableDatabase();
//更新數(shù)據(jù)庫的版本
}
}
class InsertListener implements OnClickListener{
@Override
public void onClick(View v) {
System.out.println("insert");
ContentValues values =new ContentValues();
values.put("id",1);
values.put("name", "jack");
//values.put("id",2);
//values.put("name", "lili");
DatabaseHelper dbHelper=new DatabaseHelper(MainActivity.this,"tom_db",null,2);
SQLiteDatabase db=dbHelper.getWritableDatabase();
//獲得一個(gè)可寫的數(shù)據(jù)庫
db.insert("user", null, values);
//調(diào)用insert方法,把數(shù)據(jù)插入數(shù)據(jù)庫中
}
}
class UpdateListener implements OnClickListener{
@Override
public void onClick(View v) {
System.out.println("update");
ContentValues values=new ContentValues();
values.put("name","Jim");
DatabaseHelper dbHelper =new DatabaseHelper(MainActivity.this,"tom_db",null,2);
SQLiteDatabase db=dbHelper.getWritableDatabase();
db.update("user", values, "id=?", new String[]{"2"});
}
}
class QueryListener implements OnClickListener{
@Override
public void onClick(View v) {
DatabaseHelper dbHelper =new DatabaseHelper(MainActivity.this,"tom_db",null,2);
SQLiteDatabase db=dbHelper.getReadableDatabase();
Cursor cursor =db.query("user", new String[]{"id","name"}, "id=?",new String[]{"1"}, null, null,null);
while(cursor.moveToNext()){
String name=cursor.getString(cursor.getColumnIndex("name"));
System.out.println("query------>"+name);
}
}
}
}
DatabaseHelper.java
package com.example.activity16;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class DatabaseHelper extends SQLiteOpenHelper{
private static final int VERSION=1;
public DatabaseHelper(Context context, String name, CursorFactory factory,int version) {
super(context, name, factory, version);
}//在SQLitOpenHelper的子類中,必須有該構(gòu)造函數(shù)
@Override
public void onCreate(SQLiteDatabase db) {
//創(chuàng)建一個(gè)數(shù)據(jù)庫
System.out.println("create a DataBase");
db.execSQL("create table user(id int name VARCHAR(20))");
//execSQL函數(shù)用于執(zhí)行SQL語句
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
System.out.println("updatabase");
}
}
關(guān)于布局的XML文件我就不發(fā)了,請(qǐng)大神指點(diǎn)
總結(jié)
以上是生活随笔為你收集整理的安卓mysql插入数据_【11-25求助】关于Android 的SQLite数据库插入数据报错问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL 学习一:新手一学就会,MyS
- 下一篇: 家常饼做法大全?