1.新建安卓工程后新建一个类:DatabaseHelper.java,该类继承自SQLiteOpenHelper,主要用于新建数据库,新建数据表和更新数据库:
public class DatabaseHelper extends SQLiteOpenHelper { //类没有实例化,是不能用作父类构造器的参数,必须声明为静态 private static final String name = "youyu"; //数据库名称 private static final int version = 1; //数据库版本 public DatabaseHelper(Context context) { super(context, name, null, version); } @Override public void onCreate(SQLiteDatabase db) { } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } }
2.新建类YouYuDBHelper
public class YouYuDBHelper { private DatabaseHelper databaseHelper; public YouYuDBHelper(Context context){ databaseHelper = new DatabaseHelper(context); } public void dropTable(String sql){ } public void closeDataBase(String sql){ databaseHelper.getWritableDatabase().close(); } public void createTableUser(){//创建自己需要的表 String sql = "CREATE TABLE IF NOT EXISTS TB_User(id integer primary key autoincrement,name,year,job,address)"; databaseHelper.getWritableDatabase().execSQL(sql); } public void insertUser(String name,String year,String job,String address){//数据插入 SQLiteDatabase db = databaseHelper.getWritableDatabase(); String sql = "insert into TB_User(name,year,job,address) values(?,?,?,?)"; db.execSQL(sql,new Object[]{name,year,job,address}); db.close(); } public List<User> selectUser(){//数据查询,返回一个集合(可以根据自己的需要来修改返回值) List<User> list = new ArrayList<>(); SQLiteDatabase db = databaseHelper.getWritableDatabase(); String sql = "select * from TB_User"; Cursor cursor = db.rawQuery(sql,null); while (cursor.moveToNext()){ User user = new User(); user.setId(cursor.getInt(0)); user.setName(cursor.getString(1)); user.setYear(cursor.getString(2)); user.setJob(cursor.getString(3)); user.setAddress(cursor.getString(4)); list.add(user); } cursor.close(); db.close(); return list; } }
3.在Activity中的使用
public class MainActivity extends Activity implements View.OnClickListener{
private TextView tv_content; private TextView tv_txt; private Button btn_insert; private Button btn_select; private YouYuDBHelper dbHelper; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView();//初始化控件 dbHelper = new YouYuDBHelper(MainActivity.this); dbHelper.createTableUser();//新建一个表 } private void initView() { tv_content = (TextView)findViewById(R.id.tv_content); tv_txt = (TextView)findViewById(R.id.tv_txt); btn_insert = (Button)findViewById(R.id.btn_insert); btn_select = (Button)findViewById(R.id.btn_select); btn_insert.setOnClickListener(this); btn_select.setOnClickListener(this); } @Override public void onClick(View v) { switch(v.getId()){ case R.id.btn_insert: for (int i = 0;i < 4;i++){ dbHelper.insertUser("王日"+(i+1),"20","销售","上海市嘉定区");//插入操作 } break; case R.id.btn_select: List<User> list = dbHelper.selectUser();//查询操作 tv_content.setText(list.get(0).getId()+"--"+list.get(0).getName()+"---"+list.get(0).getYear()+"--"+list.get(0).getJob()+"---"+list.get(0).getAddress()); tv_txt.setText(list.get(1).getId()+"--"+list.get(1).getName()+"---"+list.get(1).getYear()+"--"+list.get(1).getJob()+"---"+list.get(1).getAddress()); break; } }}