DatabaseTest
来源:互联网 发布:淘宝店招怎么设置全屏 编辑:程序博客网 时间:2024/06/03 12:44
1.效果图
2.代码
package com.example.databasetest;import android.app.Activity;import android.content.ContentValues;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.util.Log;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity{private MyDatabaseHelper dbHelper;@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);dbHelper=new MyDatabaseHelper(this, "BookStore.db", null, 2);Button createDatabase=(Button)findViewById(R.id.create_database);createDatabase.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v){// TODO Auto-generated method stubdbHelper.getWritableDatabase();}});Button addData=(Button) findViewById(R.id.add_data);addData.setOnClickListener(new OnClickListener(){public void onClick(View v){SQLiteDatabase db=dbHelper.getWritableDatabase();ContentValues values=new ContentValues();// 开始组装第一条数据values.put("name", "The Da Vinci Code");values.put("author", "Dan Brown");values.put("pages", 454);values.put("price", 16.96);db.insert("Book", null, values); // 插入第一条数据values.clear();// 开始组装第二条数据values.put("name", "The Lost Symbol");values.put("author", "Dan Brown");values.put("pages", 510);values.put("price", 19.95);db.insert("Book", null, values); // 插入第二条数据}});Button updateData=(Button)findViewById(R.id.update_data);updateData.setOnClickListener(new OnClickListener(){public void onClick(View v){SQLiteDatabase db=dbHelper.getWritableDatabase();ContentValues values=new ContentValues();values.put("price", 10.99);db.update("Book", values, "name=?", new String[]{"The Da Vinci Code"});}});Button deleteButton=(Button)findViewById(R.id.delete_data);deleteButton.setOnClickListener(new OnClickListener(){public void onClick(View v){SQLiteDatabase db=dbHelper.getWritableDatabase();db.delete("Book", "pages > ?", new String[]{"500"});}});Button queryButton=(Button)findViewById(R.id.query_data);queryButton.setOnClickListener(new OnClickListener(){public void onClick(View v){SQLiteDatabase db=dbHelper.getWritableDatabase();Cursor cursor=db.query("Book", null, null, null, null, null, null);if (cursor.moveToFirst()){do{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", "book name is "+name);Log.d("MainActivity", "book author is "+author);Log.d("MainActivity", "book pages is "+pages);Log.d("MainActivity", "book price is "+price);}while(cursor.moveToNext());}cursor.close();}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu){// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
package com.example.databasetest;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteDatabase.CursorFactory;import android.database.sqlite.SQLiteOpenHelper;import android.widget.Toast;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,CursorFactoryfactory,int version){super(context,name,factory,version);mContext=context;}public void onCreate(SQLiteDatabase db){db.execSQL(CREATE_BOOK);db.execSQL(CREATE_CATEGORY);Toast.makeText(mContext, "Create succeeded", Toast.LENGTH_SHORT).show();}public void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion){db.execSQL("drop table if exists Book");db.execSQL("drop table if exists Ctegory");onCreate(db);}}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <Button android:id="@+id/create_database" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Create database" /> <Button android:id="@+id/add_data" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Add data" /> <Button android:id="@+id/update_data" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Update data" /> <Button android:id="@+id/delete_data" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Delete data" /> <Button android:id="@+id/query_data" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Query data" /></LinearLayout>
0 0
- DatabaseTest
- DatabaseTest
- DatabaseTest
- 1044-Access denied for user 'root'@'%' to database databaseTest 错误
- OpenCV4Android学习之图像特征匹配算法
- 基于TI-RTOS的CC2650DK开发(3)---按钮的使用
- 十五周—字符串逆序输出
- C++ Primer学习笔记之第六章--函数
- Linux下安装Hadoop(2.7.1)详解及WordCount运行
- DatabaseTest
- 来来来, 出个题考一下你的计算机功底------程序中有某一个变量, 为什么在同一时刻有不同的值?
- [AHK]Gmailkeys-for-outlook
- 中国农历
- linux系统启动过程详解
- Matlab中Bode图--HZ显示横坐标
- 【设计模式 - 11】之享元模式(FlyWeight)
- hdu 2421 数论--积性函数
- ActiveMQ高可用+负载均衡集群