1.创建类:MyDatabaseHelper.class
/** * Created by Administrator on 2017/6/15. */ public class MyDatabaseHelper extends SQLiteOpenHelper { public static final String CREATE_BOOK= "create table Book (" + "id integer primary key autoincrement, " + "author text," + "price real," + "pages integer," + "name text)"; public static final String CREATE_CATEGORY= "create table Category (" + "id integer primary key autoincrement, " + "category_name text," + "Category_code integer)"; private Context mContext; public MyDatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory,int version) { super(context,name,factory,version); mContext=context; } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(CREATE_BOOK); db.execSQL(CREATE_CATEGORY); Toast.makeText(mContext, "create succeeded", Toast.LENGTH_SHORT).show(); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("drop table if exists Book "); db.execSQL("drop table if exists Category "); onCreate(db); } }
2.创建litepal.xml文件
<?xml version="1.0" encoding="utf-8"?> <litepal> <dbname value="BootStore" > <version value="1"> </version> <list> </list> </dbname> </litepal>
3.MainActivity.java
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final MyDatabaseHelper dbHelper = new MyDatabaseHelper(this,"BookStore.db",null,2); Button createDatabase = (Button)findViewById(R.id.create_database); Button addData =(Button)findViewById(R.id.add_data); Button updateData =(Button)findViewById(R.id.update_data); Button queryButton =(Button)findViewById(R.id.query_data); createDatabase.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { dbHelper.getWritableDatabase(); } }); addData.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { SQLiteDatabase db = dbHelper.getWritableDatabase(); ContentValues values = new ContentValues(); // 开始组装第一条 values.put("name","this is first record"); values.put("author","lhl"); values.put("pages",100); values.put("price",88); db.insert("Book",null,values); values.clear(); // 开始第二条记录 values.put("name","this is second record"); values.put("author","lhl2"); values.put("pages",200); values.put("price",188); db.insert("Book",null,values); values.clear(); } }); updateData.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { SQLiteDatabase db = dbHelper.getWritableDatabase(); ContentValues values = new ContentValues(); } }); queryButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { SQLiteDatabase db = dbHelper.getWritableDatabase(); //查询book表中所有的数据 Cursor cursor =db.query("Book",null,null,null,null,null,null); if (cursor.moveToFirst()) { do { //遍历cursor对象 ,取出数据并打印 String name =cursor.getString(cursor.getColumnIndex("name")); String author =cursor.getString(cursor.getColumnIndex("author")); int pages =cursor.getInt(cursor.getColumnIndex("pages")); double price =cursor.getDouble(cursor.getColumnIndex("price")); Log.d("MainActivity","name is "+ name); Log.d("MainActivity","author is "+ author); Log.d("MainActivity","pages is "+ pages); Log.d("MainActivity","price is "+ price); } while (cursor.moveToNext()); } cursor.close(); } }); } }4.AndroidManifest.xml<?xml version="1.0" encoding="utf-8"?> <manifest package="com.sh.databaetest" xmlns:android="http://schemas.android.com/apk/res/android"> <application android:name="org.litepal.LitePalApplication" android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application> </manifest>