//MySQLHelper .javapublic class MySQLHelper extends SQLiteOpenHelper { public static String DB_NAME = "Samyou"; public static String TABLE_NAME = "user_profile"; public static String COLUME_ID = "id"; public static String COLUME_NAME = "name"; public static String COLUME_AGE = "age"; public static String COLUME_LOCATION = "location"; public MySQLHelper(Context context, String name, CursorFactory factory, int version) { super(context, name, factory, version); } @Override public void onCreate(SQLiteDatabase db) { System.out.println("db onCreate!!!!!!"); Log.e("sqltest", "onCreat table"); String sql = "create table if not exists " + TABLE_NAME+ " (" + COLUME_ID + " integer primary key," + COLUME_NAME + " varchar," + COLUME_AGE+ " integer," + COLUME_LOCATION +" varchar);"; Log.e("sqltest", sql); db.execSQL(sql); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("drop table if exists "+TABLE_NAME); onCreate(db); }}//MainPage.javapublic class MainPage extends Activity { MySQLHelper mySQLHelper = null; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mySQLHelper = new MySQLHelper(this,MySQLHelper.DB_NAME,null,8); ContentValues contentValues = new ContentValues(); contentValues.put(MySQLHelper.COLUME_NAME, "samyou"); long now = System.currentTimeMillis(); contentValues.put(MySQLHelper.COLUME_AGE, now); System.out.println(now); contentValues.put(MySQLHelper.COLUME_LOCATION, "loc"); insertColume(contentValues); ContentValues contentValues2 = new ContentValues(); contentValues2.put(MySQLHelper.COLUME_NAME, "samyou2"); contentValues2.put(MySQLHelper.COLUME_AGE, System.currentTimeMillis()); contentValues2.put(MySQLHelper.COLUME_LOCATION, "loc2"); insertColume(contentValues2); Vector<ContentValues> v = getAll(); Log.e("sqltest", "v,size: "+v.size()); for(int i=0;i<v.size();i++) { ContentValues contentValues3 = v.elementAt(i); System.out.println("person: "+i); Log.e("sqltest", "COLUME_ID "+contentValues3.getAsInteger(MySQLHelper.COLUME_ID)); Log.e("sqltest", "COLUME_NAME "+contentValues3.getAsString(MySQLHelper.COLUME_NAME)); Log.e("sqltest", "COLUME_AGE "+contentValues3.getAsLong(MySQLHelper.COLUME_AGE)); Log.e("sqltest", "COLUME_LOCATION "+contentValues3.getAsString(MySQLHelper.COLUME_LOCATION)); } } private Vector<ContentValues> getAll() { Vector<ContentValues> v = new Vector<ContentValues>(); SQLiteDatabase db = mySQLHelper.getWritableDatabase(); Cursor cursor = db.query(MySQLHelper.TABLE_NAME, new String[]{MySQLHelper.COLUME_ID, MySQLHelper.COLUME_NAME, MySQLHelper.COLUME_AGE, MySQLHelper.COLUME_LOCATION}, null, null, null, null, MySQLHelper.COLUME_ID); int idindex = cursor.getColumnIndex(MySQLHelper.COLUME_ID); int nameindex = cursor.getColumnIndex(MySQLHelper.COLUME_NAME); int ageindex = cursor.getColumnIndex(MySQLHelper.COLUME_AGE); int locationindex = cursor.getColumnIndex(MySQLHelper.COLUME_LOCATION); cursor.moveToFirst(); while(!cursor.isAfterLast()) { Log.e("", "move cursor"); ContentValues contentValues = new ContentValues(); contentValues.put(MySQLHelper.COLUME_ID, cursor.getInt(idindex)); contentValues.put(MySQLHelper.COLUME_NAME, cursor.getString(nameindex)); contentValues.put(MySQLHelper.COLUME_AGE, cursor.getLong(ageindex));//cursor.getInt(ageindex)); contentValues.put(MySQLHelper.COLUME_LOCATION, cursor.getString(locationindex)); v.add(contentValues); cursor.moveToNext(); } cursor.close(); db.close(); return v; } private void updateColume(ContentValues contentValues,int id) { SQLiteDatabase db = mySQLHelper.getWritableDatabase(); db.update(MySQLHelper.TABLE_NAME, contentValues, MySQLHelper.COLUME_ID+"=?", new String[]{id+""}); db.close(); } private void deleteColume(int id) { Log.e("", "deleteColume"); SQLiteDatabase db = mySQLHelper.getWritableDatabase(); int a = db.delete(MySQLHelper.TABLE_NAME, MySQLHelper.COLUME_ID+"=?", new String[]{id+""}); db.close(); Log.e("", "delete colume: "+ a); } private int insertColume(ContentValues contentValues) { int cnt = -1; SQLiteDatabase db = mySQLHelper.getWritableDatabase(); cnt = (int)db.insert(MySQLHelper.TABLE_NAME, MySQLHelper.COLUME_ID, contentValues); Log.e("sqltest", "insert cnt: "+cnt); db.close(); return cnt; } }
详细解决方案
android sqlite的一些简略的操作
热度:108 发布时间:2016-05-05 14:06:39.0
相关解决方案
- fatal error; call to a member function query() on a non-object异常求回答啊 php+sqlite
- android 读取byte[]中的元素解决方案
- android 标题栏兑现方式
- android 中Activity向BroadcastReceiver发送数据,该怎么解决
- Android 4.0 为什么模拟器老是提示小弟我谷歌拼音输入法已停止
- android:getSharedPreferences() 这是哪个类的方法解决思路
- android 怎么判断一个程序是否联网
- android RadioButton如何设置默认选中
- android 怎么重新设置锚点
- android 图片对象获取的有关问题
- android 关于服务连接的疑义
- android 怎么实现对view的放大和缩小
- android ID,该如何处理
- 准备复习2-3个月,看java+android,请问有经验者,怎么看效果最好》
- android UI线程与AsyncTask的有关问题
- android(java) 中文乱码的有关问题
- SQLite.NET 找不到表, Google 了良久了都不行
- 关于.net中使用system.data.sqlite.dll,一直不太明白是如何实现的
- sqlite。net 一定要装配吗
- android 动态设立控件高度
- Android test project 编译方法
- android 4.03启动出错,显示"Encryption Unsuccessful"该如何解决
- Android 下面的listView的动态效果怎么实现的?求源代码,多谢
- Android?Palm?Symbian?Windows Mobile?学哪个有“钱图”?解决方案
- Android 开发语言,该怎么解决
- 单个人去做手机开发选什么平台好?android,iphone?解决办法
- Android 虚拟机崩溃的有关问题
- 想学学移动平台的开发 android 还是windows phone7好啊该怎么处理
- Android 上的如何读写设备文件
- SQLite TIMESTAMP的一个有关问题