unfortunately的问题
package com.imooc.tao.myapplication; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.os.Environment; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity extends AppCompatActivity { private Button insert_btn,delete_btn,update_btn,select_btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); setListener(); } private void setListener() { ButtonListener b=new ButtonListener(); insert_btn.setOnClickListener(b); delete_btn.setOnClickListener(b); update_btn.setOnClickListener(b); select_btn.setOnClickListener(b); } private void initView() { insert_btn=(Button)findViewById(R.id.insert_btn); delete_btn=(Button)findViewById(R.id.delete_btn); update_btn=(Button)findViewById(R.id.update_btn); select_btn=(Button)findViewById(R.id.select_btn); } class ButtonListener implements View.OnClickListener{ @Override public void onClick(View view) { switch (view.getId()){ case R.id.insert_btn: //参数2:数据库名称 //如果只有一个数据库名称,那么这个数据库位置将在私有目录中 //或给指定路径(sd卡) //游标工厂,null默认 String path= Environment.getExternalStorageDirectory()+"/test2.db"; SQLiteOpenHelper helper=new SQLiteOpenHelper(MainActivity.this,path,null,2) { @Override public void onCreate(SQLiteDatabase sqLiteDatabase) { //数据库不存在就创建,调用onCreate(),表的创建可以放里面 存在就不创建了 回调方法 Toast.makeText(MainActivity.this,"数据库创建",Toast.LENGTH_SHORT).show(); String sql="create table test_tb(_id integer primary key autoincrement," + "name:varchar(20)," + "age:integer" + ")"; sqLiteDatabase.execSQL(sql); } @Override public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) { Toast.makeText(MainActivity.this,"数据库升级",Toast.LENGTH_SHORT).show(); } }; //获取数据库对象 //数据库不存在就创建,调用onCreate(),表的创建可以放里面 存在就不创建了 //数据库存在,版本号升高,就调用升级方法 SQLiteDatabase db= helper.getReadableDatabase(); // db.rawQuery() 查询 // db.execSQL();添加 删除 修改 创建表 break; case R.id.delete_btn: break; case R.id.update_btn: break; case R.id.select_btn: break; } } } }
运行之后也不报错,点了 添加 就unfortunately。。。闪退问题,看了半天没找到原因,求救!!!
13
收起
正在回答 回答被采纳积分+1
Android网络操作与数据存储2018版
- 参与学习 人
- 提交作业 307 份
- 解答问题 1613 个
本专题是联网及数据处理的必备技能。课程从网络基础知识到线程间协同工作、异步下载处理。介绍了Android内外部文件存储、轻量级数据库SQLite的使用。利用屏幕适配、状态保持、百度地图解决实际问题。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星