参考《疯狂android讲义》8.4节P424

1、获取SQLiteDatabase实例有2种方法,一是直接new SQLiteDatabase(),另一种使用SQLiteHelper。一般建议使用后者。

使用SQLiteHelper插入数据的一般步骤:

package com.ljh.sqllitehelperdemo.helper;

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 { final private String CREATE_TABLE_SQL = "create table dict(_id integer primary key autoincrement, word, detail)"; public DatabaseHelper(Context context, String name, CursorFactory factory,
int version) {
super(context, name, factory, version);
} //1、创建SQLiteOpenHelper的子类,并重写onCreate及onUpgrade方法。
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(CREATE_TABLE_SQL);
} @Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } }
package com.ljh.sqllitehelperdemo;

import com.ljh.sqllitehelperdemo.helper.DatabaseHelper;

import android.os.Bundle;
import android.app.Activity;
import android.database.sqlite.SQLiteDatabase;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast; public class MainActivity extends Activity { private EditText etWord = null;
private EditText etDetail = null;
private EditText etSearchWord= null;
private TextView tvDetail = null;
private Button btInsert = null;
private Button btSearch = null; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); etWord = (EditText) findViewById(R.id.et_word);
etDetail = (EditText) findViewById(R.id.et_detail);
etSearchWord = (EditText) findViewById(R.id.et_search_content);
tvDetail = (TextView) findViewById(R.id.tv_detail);
btInsert = (Button) findViewById(R.id.bt_insert);
btSearch = (Button) findViewById(R.id.bt_search); //2、获取SQLiteOpenHelper的实例,并由此获取SQLiteDatabase实例。
DatabaseHelper helper = new DatabaseHelper(this, this.getFilesDir()+"dict.db3",null,1);
final SQLiteDatabase db = helper.getWritableDatabase(); btInsert.setOnClickListener(new OnClickListener(){ @Override
public void onClick(View v) {
String word = etWord.getText().toString();
String detail = etDetail.getText().toString();
insertData(db, word,detail);
Toast.makeText(MainActivity.this, "插入数据成功", Toast.LENGTH_LONG).show();
}
}); } private void insertData(SQLiteDatabase db, String word, String detail){
//4、执行SQL语句。
db.execSQL("insert into dict(word, detail) values(?,?)", new String[]{word,detail}); }
}

最新文章

  1. 小猪cms命名规则整理
  2. V8Sharp的中文乱码问题解决
  3. [C#基础]ref和out的使用
  4. BZOJ 2879 美食节(费用流-动态加边)
  5. c# 中List<T> union 深入理解
  6. java 获取本机ip及mac地址
  7. cocos2d-x注意事项(十)Lua发展飞机战争-4-创建主角
  8. UVALive 2678 大于s的最短子序列和
  9. 2431: [HAOI2009]逆序对数列
  10. C#抓取和分析网页的类
  11. setTimeout,setInterval运行原理
  12. [JavaScript] Cookie,localStorage,sessionStorage概述
  13. 使用extjs的页面弹出窗口宽度不能自适应如何解决?
  14. Java 模拟http请求
  15. nginx + gunicorn + flask项目发布
  16. 采用Google预训bert实现中文NER任务
  17. Faster R-CNN代码例子
  18. 非virtual函数,用指针进行upcast
  19. 二、Windows下TortoiseGit的安装与配置
  20. PODOFO编译

热门文章

  1. mysql列名不能输入中文 解决办法
  2. bzoj 2049 Cave 洞穴勘测(LCT)
  3. 算法_Longest Palindromic Substring(寻找最长回文字串)
  4. (原)Ubuntu16中安装cuda toolkit
  5. (原)ubuntu14及ubuntu16中安装docker
  6. 【solr专题之三】Solr常见异常
  7. Android动态加载代码技术
  8. Yii2.0 UrlManager
  9. shell printf格式化输出语句
  10. 添加python第三方插件时出现的问题