• SQLite数据库


    SQL数据库的增删改查
    SharedPreferences:轻量级存储
    存储的路径:data-data-shared-prefs文件
    单元测试
    onCreate(){main方法中重写}
    FragmentManager //管理器
    manager=getFragmentManager();
    //
    FragmentTransaction
    transaction=manager.beginTransaction()
    new transaction
    transaction.add();
    transaction.commit()
     
     
    内部存储:
    File存储
    CaChe存储:
    fetCacheDir()获取Cache存储路径
    data--data--包名--cache--文件
    在设备内存过低时会删除Cache存储中的文
    件,虽然系统会删除Cache中的文件,但不要
    依赖系统来删除,自己去时长控制文件的大
    小,如:1M
    Cache存储的文件,在app在被卸载是,文件会
    被删除
     
    外部存储
    SDard
    获取存储根路径
    1.getExternalStorageDirectory()
    打印绝对路径
    2,getExternalStoagePublicDirectory()
    获取公共存储区域路径
    3.getExternalCacheDir()
    获取私有存储路径
     
    SQL数据库
    创建
    通过SQLiteOpenHelper
    在数据库中读写数据:
    1.SQLiteOpenHelper对象
    2.调用SQLiteOpenHelper对象的
    getWritableDataBase();
    getReadableDataBase()-->SQLiteDataBase
    3.从数据库中读取数据SQLiteDataBase的
    query();rawQuey()
    4.每一个查询都将得到Cursor(游标)
     
    游标:Cursor:
    方法:
    isAfterLast():游标的指针是否指向了最后一
    条数据的后面
    moveToNext():让游标指向下一条数据
    moveToFirsr():让游标指向第一天数据
    getString(int columnIndex):获取当前行中
    指定列的String值.参考列索引
    getColumnIndex(Stirng columnName)根据
    列名字获取列索引
     
    插入:
    返回值-->插入的行id
    SQLiteDataBase.insert(列表名,允许空行,插
    入的数据)
    CintentValus put(键  ,值);(键:表中列的名
    字)
     
    查询:
    返回值:Cursor
    rawQuery(查询的SQL语句,语句中占位符的
    值)
     
    更新:Update
    返回值:更新的数据条
    db.update(参数1:被修改的表名,参数2:修
    改的值,参数3:更新条件,参数4:更新条件中
    占位符的值);
     
    删除:Delete
    db.delete(参数1:表名,参数2:删除条件,参数
    3:删除条件中的占位符的值);
     
    SQL数据存储:
    SQL语句分类:
    DML:数据管理语言-->增删改查
    DDL:数据库定义语言-->表的创建,删除
    DCL:数据库控制语言(授权,角色控制)
    TCL:事物控制语言
     
    增删改查(CRUD):
    增:Create new records
    删:Delete existing records
    改:Update existing records
    查:Retrieve existing records
     
    SQLite数据库访问工具:SQLiteExpert
    SQLiteOPenHelper
    SQLiteDateBase
    创建语句:
    Create table TABLENAME(  _id  integer  primary key autoincrement)
    创建表名(id和主键,自增)
    SQLite内部只支持null;  integer;  real:浮点;  text;  char(n)
     
    增删改查:
    Cursor:查询.
    moveToFirst , moveToNext , moveToLast ,moveToprevious
    isAdterLast
    Getxxx(列索引):通过列名字获取列的索引
    SimpleCursorAdapter:数据源cursor,cursor必须包含-id
     
    数据库的分页加载
    滑动监听:onScrollListener
    查找: select *from 表名 limit 值1 ,值2
    从表中查找数据:从第一天数据开始,查出来值2条数据
     
    工具类的封装:
    结合SearchView控件实现对数据库的检索,关键是设置搜索文本内容改变监听:setOnQueryTextListener();
    开始事务:
    db.beginTransaction();
    把事务设置成功状态--如果执行,插入操作成功,没有执行,撤销插入的数据
    db.setTransactionSuccessful();
    事务结束:
    db.endTranscation();
     
     
    你必须非常努力,才能看起来毫不费力。。。
  • 相关阅读:
    muduo网络库TcpConnection对象生存期管理
    马:ma一个与代码无关的隐形眼镜的度数换算
    分享ORACLE数据库密码口令过期被锁后的解锁方法
    关于SVN状态图标不显示的解决办法(史上最全)
    Windows 新增远程桌面会话连接数(可多人同时远程桌面,互不影响)
    js移除字符串的中文/空格
    ORA-00059: 超出 DB_FILES 的最大值
    ORA-02292违反完整约束和ORA-02297无法禁用约束条件 cascade禁用主键
    SVN—org.apache.subversion.javahl.ClientException: Attempted to lock an already-locked dir
    js金额格式化
  • 原文地址:https://www.cnblogs.com/yiweiaimeng/p/4502563.html
Copyright © 2020-2023  润新知