zoukankan      html  css  js  c++  java
  • 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();
     
     
    你必须非常努力,才能看起来毫不费力。。。
  • 相关阅读:
    Pascal's Triangle 2(leetcode java)
    118. Pascal's Triangle (java)
    Bulb Switcher (leetcode java)
    Lowest Common Ancestor of a Binary Search Tree(Java 递归与非递归)
    Remove Duplicate Letters(Java 递归与非递归)
    读大道至简有感
    自学Java第一周的总结
    jmeter----jpgc----ultimate thread group
    jmeter----jpgc----stepping thread group
    jmter--jpgc模块
  • 原文地址:https://www.cnblogs.com/yiweiaimeng/p/4502563.html
Copyright © 2011-2022 走看看