-
SQLite方法 db.execSQL(sql); //执行任何SQL语句 db.insert(table,nullColumnHack,values); db.delete(table,whereClause,whereArgs) db.update(table,whereClause,whereArgs) db.query(table,columns,selection,selectionArgs, groupBy,having,orderBy) db.rawRuery(sql,selectionArgs);查看全部
-
-SQLiteDatabase 提供了一些管理SQLite数据库的类 提供创建,删除,执行SQLite命令,并执行数据库管理任务的方法 每个程序的数据库名字是唯一的 db.execSQL(sql)//执行任何SQL语句(查询语句除外,因为返回类型不匹配) db.insert(String table,String nullColumnHack,ContentValues values)//(表名,空列的日志,值) db.delete(String table,String whereClause,String[] whereArgs)//(表名,删除条件,删除条件数组值) db.update(String table,ContentValues values,String whereClause,String[]whereArgs)//(表名,值,更新条件,更新的条件数组) db.query(String table,String[]Columns,String selection,String[] selectionArgs,String groupBy,String having,String orderBy,String limit)//(表名,查询的列,位置条件,与selection拼成条件,分组,筛选,排序,分页限制)(查询) db.rawQuery(sql,selecionArgs)(查询) -SQLiteOpenHelper Ps:如果String whereClause(String selection)写得比较完整,则String[] whereArgs(String selectionArgs)可置为null。查看全部
-
SQLite特点主要包括: 1、 轻量级 一个动态库、单文件 2、 独立性 没有依赖、无须安装 3、 隔离性 全部在一个文件夹中 4、 跨平台 支持众多操作系统 5、 多语言接口 支持众多编程语言 6、 安全性 事务 --关于事务处理的安全性: -通过数据库上的独占性和共享锁来实现独立事务处理 -多个进程可以同一时间从同一个数据库读取数据,但只有一个可以写入数据。 SQLite的数据类型: -SQLite支持NULL、INTEGER、REAL、TEXT、BLOB数据类型 -依次代表:空值、整型值,浮点值,字符串值,二进制对象 动态数据类型(弱引用) -当某个值插入到数据库时,SQLite会检查他的数据类型,如果该类型与关联的列类型不匹配,SQLite就会尝试将该值转换成该列的类型,如果不能转换,该值将作为本身的类型存储。 使用须知: -由于资源占用少、性能良好和零管理成本,嵌入式数据库有了他的用武之地。例如Android、IOS -没有可用于SQLite的网络服务器、只能通过网络共享可能存在文件锁定或者性能问题。 -只提供数据库级的锁定。 -没有用户账户概念,而是根据文件系统确定所有数据库的权限查看全部
-
SQLite是D.Richard Hipp用c语言写的开源嵌入式数据库引擎.他支持大多数SQL92标准,并且可以在所有主要操作系统上运行 ---引擎很小但是支持高达两个TB大小的数据库 ---以单个文件形式存在 ---以B-Tree的数据结构形式存储在磁盘 【SQLite特点】 1.轻量级 一个动态库、单文件 2.独立性 没有依赖、无需安装 3.隔离性 全部都在一个文件夹中 4.跨平台 支持众多操作系统 5.多语言接口 支持众多编程语言 6.安全性 事务 关于事务处理的安全性问题 -通过数据库上的独占性和共享锁来实现独立事务处理 -多个进程可以在同一事件从同一数据库读取数据,但只有一个可以写入 关于SQLite的数据类型 SQLite支持NULL,INTEGER,REAL,TEXT和BLOB数据类型 依次代表:空值 , 整形值 , 浮点值 , 字符串值 , 二进制对象 动态数据类型(弱引用) 当某个值插入到数据库时,SQLite将会检查它的类型,如果该类型时关联的列不匹配,SQLite则会尝试将该值转换成该列的类型,如过不能转换,则该值将作为本身的类型储存 使用须知 -由于资源占用少,性能良好和零管理成本,嵌入式数据库有了它的用武之地:例如:Android,IOS -没有可用于SQLite的网络服务器,只能通过网络共享,可能存在的文件锁定或者性能问题 -只提供数据库级的锁定 -没有用户账户概念,而是根据文件系统确定所有数据库权限查看全部
-
创建对象默认和自定义 默认:PreferebceManager.getDefauleSharedPreferences(上下文); 自定义:getSharedPreferences("自定义名称",权限) Editor editor = pref.edit();//编辑器对象 editor.commit();//提交, editor.remove(key)//移除 ref.getString(key)//取出查看全部
-
一、各種申明: EditText etUserName,etUserPass; CheckBox chk; SharedPreferences pref; Editor edtior; etUserName = (EditText) findViewById(R.id.etuserName); etUserPass = (EditText) findViewById(R.id.etuserpass); chk = (CheckBox) findViewById(R.id.chkSaveName); 二:為登錄、取消按鈕添加屬性:(添加點擊事件的另一個方法) android:onClick="doClick" public void doClick(View v){ switch (v.getId()) { case R.id.btnLogin: String name = etUserName.getText().toString().trim();//去掉收尾的空格 String pass = etUserPass.getText().toString().trim(); if ("admin".equals(name)&&"123456".equals(pass)) { if (chk.isChecked()) { edtior.putString("userName", name); edtior.commit(); }else { edtior.remove("userName"); edtior.commit(); } Toast.makeText(MainActivity.this, "登陆成功", Toast.LENGTH_LONG).show(); }else { Toast.makeText(MainActivity.this, "禁止登陆", Toast.LENGTH_LONG).show(); } break; default: break; } }查看全部
-
DemoSharedPreferences I //第一种方法 //SharedPreferences sp=PreferenceManager.getDefaultSharedPreferences(this); //第二种方法 *//** * 第一个参数:文件名.xml * 第二个参数:模式;如MODE_PRIVATE:只有这个APP可以调用此对象sp *//* SharedPreferences sp=getSharedPreferences("myPref", MODE_PRIVATE); Editor editor=sp.edit(); //存储数据 editor.putString("Name", "慕课网"); editor.putInt("Age", 30); editor.putLong("Time", System.currentTimeMillis()); editor.putBoolean("Default", true); editor.commit();//如果这个不写的话,所有操作都无效 editor.remove("Default"); editor.commit(); //读取数据 Log.i("TAG", sp.getString("Name", "默认值"));//第二个参数:取不到数据的默认值 Log.i("TAG", String.valueOf(sp.getInt("Age", 0))); Log.i("TAG", String.valueOf(sp.getInt("Age1", 0)));//假设取不到 Ps:Eclipse中,Error提示,双击错误地方即可锁定错误的位置。查看全部
-
SharedPreferences存 SharedPreferences pref =getSharedPreferences("myPref", MODE_PRIVATE); String xname=edit1.getText().toString(); String xpass=edit2.getText().toString(); Editor editor = pref.edit(); editor.putString("name",xname); editor.putString("pass",xpass); editor.commit(); SharedPreferences取 SharedPreferences pref=getSharedPreferences("myPref",MODE_PRIVATE); String Name=pref.getString("name", ""); String Pass=pref.getString("pass", ""); String uinputname=edit11.getText().toString(); String uiputpwd=edit22.getText().toString(); 判断SharedPreferences存是否与输入相同 if (uinputname.equals(Name)&&uiputpwd.equals(Pass)) { Toast.makeText(MainActivity2.this, "登陆成功", Toast.LENGTH_LONG).show(); }else{ Toast.makeText(MainActivity2.this, "登陆失败", Toast.LENGTH_LONG).show(); }查看全部
-
Uri的理解查看全部
-
如何实现ContentProvider查看全部
-
如何理解ContentProvider查看全部
-
发送广播: Intent intent = new Intent() intent.putExtra("msg","这是普通广播") Intent.setAction("BC_One");//确保Intent的唯一性 sendBroadcast(intent) //发送广播 接收广播: 1.继承BroadcastReceiver,实现其方法onReceiver() String s=intent.getStringExtra("msg"); System.out.println("接收到消息"+s); abortBroadcast();//截断广播的方法,普通广播无法截断 清单文件(静态注册): <receiver android:name="包名加类名"> <intent-filter android:proprity="100"> //设置广播优先级,值为-1000~1000 <action android:name="包名.类名"/> </intent-filter> </receiver> 动态注册方法: IntentFilter intentfilter=new IntentFilter("Broadcast_one");//设置过滤 MyBroadcastReceiver2 receiver2 = new MyBroadcastReceiver2(); registerReceiver(receiver2, intentFilter); 注意: 1)动态注册的BroadcastReceiver优先级要比静态注册的高 2)动态注册有个弊端:如果当前java的程序结束了,动态注册的接收者将不再能收到广播。所以类似于短信拦截的BroadcastReceiver不能用动态注册。查看全部
-
SQLite常用方法查看全部
-
SQLite主要特点查看全部
-
sharedPreferences查看全部
举报
0/150
提交
取消