wuhudamahua 2016-05-08 15:26 采纳率: 0%
浏览 1486

Android一个简单数据库应用

图片说明我做了一个简单的Android数据库应用,就是一个在edittext中输入文字,点击按钮就把输入的文字保存到数据库中,但是db=dbHelper.getWritableDatabase(); 总是报错
package com.example.shujukushiyan;

import android.app.Activity;
import android.content.ContentValues;
import android.content.Context;
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;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {

shujuku dbHelper;
EditText et;
Button bt;
Context context;
SQLiteDatabase db;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    dbHelper = new shujuku(context,"wenzi.db",null,3);
    et=(EditText) findViewById(R.id.et);   
    bt=(Button) findViewById(R.id.bt);
    bt.setOnClickListener(new OnClickListener(){
        @Override
        public void onClick(View v) {
            db=dbHelper.getWritableDatabase();              
            ContentValues values=new ContentValues();               
            values.put("neirong",et.getText().toString());
            db.insert("text", null, values);            
            Toast.makeText(context, "sava success", 0).show();
        }           
    });
}

}

这是数据库代码
package com.example.shujukushiyan;

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

public class shujuku extends SQLiteOpenHelper {

public shujuku(Context context, String name, CursorFactory factory,
        int version) {
    super(context, name, factory, version);
}

@Override
public void onCreate(SQLiteDatabase db) {

    db.execSQL("create table text("+"id integer primary key autoincrement,"+"neirong text)");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    db.execSQL("dorp table if exists text");
    onCreate(db);
}

}

  • 写回答

5条回答 默认 最新

  • threenewbee 2016-05-08 15:31
    关注

    多半是你数据库文件的路径有问题。

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题