设为首页 收藏本站
查看: 826|回复: 0

[经验分享] android sqlite 一次创建多个表

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-11-30 11:13:04 | 显示全部楼层 |阅读模式
package com.yangguangfu.database;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
/**
* 默认就在数据库里创建4张表
* @author 阿福(trygf521@126.com)
*
*/
public class DBOpenHelper extends SQLiteOpenHelper {
private static final String name = "database.db";//数据库名称
private static final int version = 1;//数据库版本
public DBOpenHelper(Context context) {
super(context, name, null, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
Log.e("DBOpenHelper", "DBOpenHelperDBOpenHelperDBOpenHelperDBOpenHelper");
db.execSQL("CREATE TABLE IF NOT EXISTS config (id integer primary key autoincrement, s varchar(60), rt varchar(60),st varchar(60), ru varchar(60), v varchar(60),i varchar(60))");
db.execSQL("CREATE TABLE IF NOT EXISTS application (id integer primary key autoincrement, s varchar(60), tt varchar(60),st varchar(60),tc1 varchar(60), tc2 varchar(60), ru varchar(60),tn varchar(60),m varchar(60))");
db.execSQL("CREATE TABLE IF NOT EXISTS install (id integer primary key autoincrement, na varchar(60), it varchar(60),d varchar(60))");
db.execSQL("CREATE TABLE IF NOT EXISTS smslist (id integer primary key autoincrement, t varchar(60), st varchar(60),n1 varchar(60),n2 varchar(60),n varchar(60),m varchar(60),a varchar(60))");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.e("DBOpenHelper", "onUpgradeonUpgradeonUpgradeonUpgrade");
db.execSQL("DROP TABLE IF EXISTS config");
db.execSQL("DROP TABLE IF EXISTS application");
db.execSQL("DROP TABLE IF EXISTS install");
db.execSQL("DROP TABLE IF EXISTS smslist");
onCreate(db);
}

}

  数据库服务

package com.yangguangfu.database;

import android.content.Context;
import android.database.Cursor;
import com.yangguangfu.bean.ApplicationInfo;
import com.yangguangfu.bean.ConfigInfo;
import com.yangguangfu.bean.InstallInfo;
import com.yangguangfu.bean.SMSInfo;
/**
* 数据库方法封装,创建表,删除表,数据(增删该查)...
* @author 阿福(trygf521@126.com)
*
*/
public class DatabaseService {
private DBOpenHelper dbOpenHelper;
public DatabaseService(Context context) {
dbOpenHelper = new DBOpenHelper(context);
}
public void dropTable(String taleName) {
dbOpenHelper.getWritableDatabase().execSQL(
"DROP TABLE IF EXISTS " + taleName);
}

public void closeDatabase(String DatabaseName) {
dbOpenHelper.getWritableDatabase().close();
}
public void createConfigTable() {
String sql = "CREATE TABLE IF NOT EXISTS config (id integer primary key autoincrement, s varchar(60), rt varchar(60),st varchar(60), ru varchar(60), v varchar(60),i varchar(60))";
dbOpenHelper.getWritableDatabase().execSQL(sql);
}
public void createTableApplication() {
String sql = "CREATE TABLE IF NOT EXISTS application (id integer primary key autoincrement, s varchar(60), tt varchar(60),st varchar(60),tc1 varchar(60), tc2 varchar(60), ru varchar(60),tn varchar(60),m varchar(60))";
dbOpenHelper.getWritableDatabase().execSQL(sql);
}
public void createTableInstall() {
String sql = "CREATE TABLE IF NOT EXISTS install (id integer primary key autoincrement, na varchar(60), it varchar(60),d varchar(60))";
dbOpenHelper.getWritableDatabase().execSQL(sql);
}
public void createTableSmslist() {
String sql = "CREATE TABLE IF NOT EXISTS smslist (id integer primary key autoincrement, t varchar(60), st varchar(60),n1 varchar(60),n2 varchar(60),n varchar(60),m varchar(60),a varchar(60))";
dbOpenHelper.getWritableDatabase().execSQL(sql);
}
public void saveConfigInfo(ConfigInfo configInfo) {
dbOpenHelper.getWritableDatabase().execSQL(
"insert into config (s, rt, st, ru, v,i) values(?,?,?,?,?,?)",
new Object[] { configInfo.getS(), configInfo.getRt(),
configInfo.getSt(), configInfo.getRu(),
configInfo.getV(), configInfo.getI() });
}
public void saveApplicationInfo(ApplicationInfo configInfo) {
dbOpenHelper
.getWritableDatabase()
.execSQL(
"insert into application (s,tt,tc1,tc2,ru,tn,m) values(?,?,?,?,?,?,?)",
new Object[] { configInfo.getS(), configInfo.getTt(),
configInfo.getTc1(), configInfo.getTc2(),
configInfo.getRu(), configInfo.getTn(),
configInfo.getM() });
}
public void saveMsmInfo(SMSInfo configInfo) {
dbOpenHelper
.getWritableDatabase()
.execSQL(
"insert into smslist (t,st,n1,n2,n,m,a) values(?,?,?,?,?,?,?)",
new Object[] { configInfo.getT(), configInfo.getSt(),
configInfo.getN1(), configInfo.getN2(),
configInfo.getN(), configInfo.getM(),
configInfo.getA() });
}
public void saveInstallInfo(InstallInfo configInfo) {
dbOpenHelper.getWritableDatabase().execSQL(
"insert into install (na,it,d) values(?,?,?)",
new Object[] { configInfo.getNa(), configInfo.getIt(),
configInfo.getD() });
}
public void updateConfigInfo(ConfigInfo configInfo) {
dbOpenHelper.getWritableDatabase().execSQL(
"update config set s=?, rt=?, st=?, ru=?, v=?,i=? where id=?",
new Object[] { configInfo.getS(), configInfo.getRt(),
configInfo.getSt(), configInfo.getRu(),
configInfo.getV(), configInfo.getI(),
configInfo.getId() });
}
public void updateApplicationInfo(ApplicationInfo configInfo) {
dbOpenHelper
.getWritableDatabase()
.execSQL(
"update application set s=?, tt=?, st=?, tc1=?, tc2=?,ru=?,tn=?,m=? where id=?",
new Object[] { configInfo.getS(), configInfo.getTt(),
configInfo.getSt(), configInfo.getTc1(),
configInfo.getTc2(), configInfo.getRu(),
configInfo.getTn(),configInfo.getM(), configInfo.getId() });
}
public void updateInstallInfo(InstallInfo configInfo) {
dbOpenHelper.getWritableDatabase().execSQL(
"update install set na=?, it=?, d=? where id=?",
new Object[] { configInfo.getNa(), configInfo.getIt(),
configInfo.getD(), configInfo.getId() });
}
public void updateSMSInfo(SMSInfo configInfo) {
dbOpenHelper
.getWritableDatabase()
.execSQL(
"update smslist set t=?, st=?, n1=?, n2=?, n=?, m=?, a=? where id=?",
new Object[] { configInfo.getT(), configInfo.getSt(),
configInfo.getN1(), configInfo.getN2(),
configInfo.getN(), configInfo.getM(),
configInfo.getA(), configInfo.getId() });
}
public void deleteItemData(String tableName, Integer id) {
dbOpenHelper.getWritableDatabase()
.execSQL("delete from " + tableName + " where id=?",
new Object[] { id });
}

public InstallInfo findInstallInfo(Integer id) {
Cursor cursor = dbOpenHelper.getWritableDatabase().rawQuery(
"select id,na,it,d from install where id=?",
new String[] { String.valueOf(id) });
if (cursor.moveToNext()) {
InstallInfo configInfo = new InstallInfo();
configInfo.setId((cursor.getInt(0)));
configInfo.setNa(cursor.getString(1));
configInfo.setIt(cursor.getString(2));
configInfo.setD(cursor.getString(3));
return configInfo;
}
return null;
}
public ConfigInfo findConfigInfo(Integer id) {
Cursor cursor = dbOpenHelper.getWritableDatabase().rawQuery(
"select id,s,rt,st,ru,v,i from config where id=?",
new String[] { String.valueOf(id) });
if (cursor.moveToNext()) {
ConfigInfo configInfo = new ConfigInfo();
configInfo.setId((cursor.getInt(0)));
configInfo.setS(cursor.getString(1));
configInfo.setRt(cursor.getString(2));
configInfo.setSt(cursor.getString(3));
configInfo.setRu(cursor.getString(4));
configInfo.setV(cursor.getString(5));
configInfo.setI(cursor.getString(6));
return configInfo;
}
return null;
}
public SMSInfo findSMSInfo(Integer id) {
Cursor cursor = dbOpenHelper.getWritableDatabase().rawQuery(
"select id,t,st,n1,n2,n,m,a from smslist where id=?",
new String[] { String.valueOf(id) });
if (cursor.moveToNext()) {
SMSInfo configInfo = new SMSInfo();
configInfo.setId((cursor.getInt(0)));
configInfo.setT(cursor.getString(1));
configInfo.setSt(cursor.getString(2));
configInfo.setN1(cursor.getString(3));
configInfo.setN2(cursor.getString(4));
configInfo.setN(cursor.getString(5));
configInfo.setM(cursor.getString(6));
configInfo.setA(cursor.getString(7));
return configInfo;
}
return null;
}
public ApplicationInfo findApplication(Integer id) {
Cursor cursor = dbOpenHelper
.getWritableDatabase()
.rawQuery(
"select id,s,tt,st,tc1,tc2,ru,tn,m from application where id=?",
new String[] { String.valueOf(id) });
if (cursor.moveToNext()) {
ApplicationInfo applicationinfo = new ApplicationInfo();
applicationinfo.setId((cursor.getInt(0)));
applicationinfo.setS(cursor.getString(1));
applicationinfo.setTt(cursor.getString(2));
applicationinfo.setSt(cursor.getString(3));
applicationinfo.setTc1(cursor.getString(4));
applicationinfo.setTc2(cursor.getString(5));
applicationinfo.setRu(cursor.getString(6));
applicationinfo.setTn(cursor.getString(7));
applicationinfo.setM(cursor.getString(8));
return applicationinfo;
}
return null;
}
public long getDataCount(String tableName) {
Cursor cursor = dbOpenHelper.getReadableDatabase().rawQuery(
"select count(*) from " + tableName, null);
cursor.moveToFirst();
return cursor.getLong(0);
}
//// ///////////////////////
//public LinkedList<ConfigInfo> getScrollData(int startindex, int maxResult) {
//LinkedList<ConfigInfo> xmlInfos = new LinkedList<ConfigInfo>();
//Cursor cursor = dbOpenHelper.getReadableDatabase().rawQuery(
//"select id,s,rt,st,ru,v,i from config limit ?,?,?,?,?,?",
//new String[] { String.valueOf(startindex),
//String.valueOf(maxResult) });
//while (cursor.moveToNext()) {
//ConfigInfo xmlInfo = new ConfigInfo();
//xmlInfo.setId((cursor.getInt(0)));
//xmlInfo.setS(cursor.getString(1));
//xmlInfo.setRt(cursor.getString(2));
//xmlInfo.setSt(cursor.getString(6));
//xmlInfo.setRu(cursor.getString(3));
//xmlInfo.setV(cursor.getString(4));
//xmlInfo.setI(cursor.getString(5));
//xmlInfos.add(xmlInfo);
//}
//cursor.close();
//return xmlInfos;
//}
//
//// //////////////
//public Cursor getScrollDataCursor(int startindex, int maxResult) {
//Cursor cursor = dbOpenHelper
//.getReadableDatabase()
//.rawQuery(
//"select id as _id,s,rt,li,ru,tn,m from config limit ?,?,?,?,?,?",
//new String[] { String.valueOf(startindex),
//String.valueOf(maxResult) });
//return cursor;
//}
//
//public Cursor getScrollDataCursorApplication(int startindex, int maxResult) {
//Cursor cursor = dbOpenHelper
//.getReadableDatabase()
//.rawQuery(
//"select id as _id,s,tt,st,st,ru,v,i from application limit ?,?,?,?,?,?,?",
//new String[] { String.valueOf(startindex),
//String.valueOf(maxResult) });
//return cursor;
//}
public void close() {
dbOpenHelper.close();
}
}

 

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-307676-1-1.html 上篇帖子: SQLite入门与分析(五)---Page Cache之并发控制 下篇帖子: c# sqlite 数据库加密2010-05-29 10:55用了ADO.NET 2.0 SQLite Data Provider 这样可以直接利用它来创建一个
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表