
把一个web服务器上的数据库。写两个程序,一个添加和更新(和选择,所以你可以选择记录更新)功能,另一个只有添加功能启用。(你写的主要主管应用程序,然后禁用监控功能,按钮,显示器,实地工作者应用。)每个用户连接到网站,使用这个应用程序,输入/修改数据。这是一个标准的数据库接口,只是使用Android应用程序而不是桌面程序,用户界面。
是的,sqlite比较小。
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是DRichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的 *** 作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。 至2015年已经有15个年头,SQLite也迎来了一个版本 SQLite 3已经发布。
public class DBHelper extends SQLiteOpenHelper {
public static final String TB_NAME = "mydemo_user";
public static final String ID = "_id";
public static final String NAME = "username";
public static final String PASSWORD = "passname";
public static final String ISCHECK = "ischecked";
//当前版本
public static int version = 1;
/
构造函数
@param context Context类型,上下文对象。
@param name String类型,数据库的名称
@param factory CursorFactory类型
@param version int类型,数据库版本
/
public DBHelper(Context context, String name, CursorFactory factory,int version) {
super(context, name, factory, version);
thisgetWritableDatabase();
}
public void Close() {
thisgetWritableDatabase()close();
}
/
创建数据库
/
public void onCreate(SQLiteDatabase db) {
dbbeginTransaction();
try{
dbexecSQL("CREATE TABLE IF NOT EXISTS "
+ TB_NAME + " ("
+ ID + " INTEGER PRIMARY KEY,"
+ NAME + " VARCHAR,"
+ PASSWORD + " VARCHAR,"
+ ISCHECK + " VARCHAR)");
dbsetTransactionSuccessful();
}catch (Exception e) {
} finally {
dbendTransaction();//此时不能关闭数据库,不然创建数据库完成后,数据库不能使用
}
}
/
删除数据库
/
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
dbexecSQL("DROP TABLE IF EXISTS " + TB_NAME);
onCreate(db);
}
/
添加新用户
@param name
@param number
/
public void addUser(String username, String password,String isChecked) {
ContentValues values = new ContentValues();
valuesput(DBHelperNAME, username);
valuesput(DBHelperPASSWORD, password);
valuesput(DBHelperISCHECK, isChecked);
thisgetWritableDatabase()insert(DBHelperTB_NAME, DBHelperID, values);
}
/
删除单个用户
@param id
/
public void delUser(int id) {
thisgetWritableDatabase()delete(DBHelperTB_NAME, DBHelperID + " = " + id, null);
}
/
修改单个用户
@param id
/
public void updateUser(int id,String username, String password,String isChecked) {
ContentValues values = new ContentValues();
valuesput(DBHelperNAME, username);
valuesput(DBHelperPASSWORD, password);
valuesput(DBHelperISCHECK, isChecked);
String where = DBHelperID+"=";//设置条件
String[] whereValue = {IntegertoString(id)};//设置条件中的参数
thisgetWritableDatabase()update(DBHelperTB_NAME, values, where, whereValue);
}
/
删除多个用户
/
public void delAllUser() {
thisgetWritableDatabase()delete(DBHelperTB_NAME, null, null);
}
/
查询
@param username
@return
/
public List<Users> queryUser(String username){
List<Users> data = new ArrayList<Users>();
String[] columns = { DBHelperID, DBHelperNAME, DBHelperPASSWORD,DBHelperISCHECK };
String[] parms = { username };
String where = DBHelperNAME + "=";// 设置条件
Cursor result=null;
if(username!=null){
result = thisgetWritableDatabase()query(DBHelperTB_NAME,columns, where, parms, null, null, null);
}else{
result = thisgetWritableDatabase()query(DBHelperTB_NAME,columns, null, null, null, null, null);
}
resultmoveToFirst();//移动到第一行
while (!resultisAfterLast()) {//遍历数据
Users user = new Users(resultgetInt(0), resultgetString(1),resultgetString(2), resultgetString(3));
dataadd(user);
resultmoveToNext();
}
resultclose();
return data;
}
}
Android应用程序的数据通常保存在以下地方:XML文件、SharedPerefences、文件、SQLite数据库、外接数据库等。
除SQLite数据库和外接数据库外,其他几种方式都只能存储少量数据。
SQLite数据库是一种嵌入式数据库,可以嵌入在Android中。Android程序可以直接 *** 作SQLite数据库,但数据无法在不同终端之间共享。
外接数据库可以实现不同APP、不同移动终端共享数据。Android也可以直接访问外接数据库,如MySQL、SQL Server等,但这种方式不安全。通常的做法是使用Web服务访问外接数据库,返回基本类型数据或JSON格式数据,Android访问Web服务,即避免Android直接 *** 作外接数据库。这有我写的一个《
Android访问JavaEE部署的Web服务返回的JSON格式数据
》的 *** 作说明:>
以上就是关于安卓应用程序数据库全部的内容,包括:安卓应用程序数据库、目前安卓APP开发用本地数据库都是SQLite数据库吗、安卓读取数据库的数据怎么 *** 作等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)