当前位置: 首页 > news >正文

网站建设 企业短视频运营计划书

网站建设 企业,短视频运营计划书,房产信息门户网站建设方案,哪个网络公司做网站好使用 SQLite 保存数据 | Android Developers (google.cn) SQLiteOpenHelper 类包含一组用于管理数据库的实用 API。当您使用此类获取对数据库的引用时#xff0c;系统仅在需要时才执行可能需要长时间运行的数据库创建和更新操作#xff0c;而不是在应用启动期间执行。您仅…使用 SQLite 保存数据  |  Android Developers (google.cn)  SQLiteOpenHelper 类包含一组用于管理数据库的实用 API。当您使用此类获取对数据库的引用时系统仅在需要时才执行可能需要长时间运行的数据库创建和更新操作而不是在应用启动期间执行。您仅需调用 getWritableDatabase() 或 getReadableDatabase() 即可。 注意由于这些操作可能会长时间运行因此请务必在后台线程中调用 getWritableDatabase() 或 getReadableDatabase()。 这两个方法都可以创建或打开一个现有的数据库(如果数据库已存在则直接打开否则创建一个新的数据库)并返回一个可对数据库进行读写操作的对象。不同的是当数据库不可写入的时候(如磁盘空间已满)。 getReadableDatabase()方法返回的对象将以只读的方式去打开数据库 getWritableDatabase()方法则将出现异常 创建一个数据库管理类继承 SQLiteOpenHelper并重写其中的方法 onCreate() 创建数据库onUpgrade() 数据库升级onDowngrade() 和 onOpen() 并不是必须 准备数据库框架 准备表名、列名 // ----表名public static final String STUTDY_SQLITE_TABLE STUTDY_SQLITE_TABLE;// ----列名public static final String COLUNM_ID ID;public static final String COLUNM_NAME COLUNM_NAME;public static final String COLUNM_PHONE COLUNM_PHONE;public static final String COLUNM_PASSWORD COLUNM_PASSWORD; 创建数据库 onCreate() // 第一次尝试访问数据库对象时会调用该方法创建新表public void onCreate(SQLiteDatabase sqLiteDatabase) {// 创建新表的语句String createNewTableSqlStr CREATE TABLE STUTDY_SQLITE_TABLE (ID INTEGER PRIMARY KEY AUTOINCREMENT, COLUNM_NAME TEXT, COLUNM_PHONE TEXT, COLUNM_PASSWORD TEXT);sqLiteDatabase.execSQL(createNewTableSqlStr);} 修改数据库 onUpgrade() // 当数据库的版本号发生变化时会调用该方法public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {} CRUD 操作 C-添加  public long insert(String table, String nullColumnHack, ContentValues values) 参数1表名 参数2将指示框架在 ContentValues 为空即您没有 put 任何值时应执行哪些操作 参数3内容 通过将 ContentValues 对象传递给 insert() 方法将数据插入到数据库中 方法会返回新创建行的 ID如果在插入数据时出错会返回 -1。如果数据与数据库中已有的数据之间存在冲突就会出现这种情况。 public boolean addOne(UserBean userBean) {//获取要编写的唯一一个数据库/* getWritableDatabase SQLiteOpenHelper中的方法*/SQLiteDatabase sqLiteDatabase this.getWritableDatabase();// 有点像flutter里的键值对ContentValues cv new ContentValues();cv.put(COLUNM_NAME, userBean.getName());cv.put(COLUNM_PHONE, userBean.getPhone());cv.put(COLUNM_PASSWORD, userBean.getPassWord());long insert sqLiteDatabase.insert(STUTDY_SQLITE_TABLE, null, cv);return insert ! -1;} R-查询 使用 query() 方法向其传递选择条件和所需的列。 该方法合并了 insert() 和 update() 元素查询结果会包含在 Cursor 对象中返回。 Cursor对象是查询的结果集 public Cursor query(String table, String[] columns, String selection,         String[] selectionArgs, String groupBy, String having,         String orderBy, String limit) table:表名columns指定要查询的列如果为空则返回所有列selection指定查询条件使用占位符 ?selectionArgs查询条件具体的值groupBy:指定分组方式having指定having方式orderBy指定排序方式limit限制查询返回的行数 使用rawQuery()方法 public Cursor rawQuery(String sql, String[] selectionArgs) sql查询语句selectionArgs查询条件 // 从数据库中查询String querySqlStr SELECT * FROM STUTDY_SQLITE_TABLE;SQLiteDatabase sqLiteDatabase this.getReadableDatabase(); //可读Cursor cursor sqLiteDatabase.rawQuery(querySqlStr, null); U-修改 使用 update() 方法. 更新表可将 insert() 的 ContentValues 语法与 delete() 的 WHERE 语法相结合。 update() 方法的返回值是数据库中受影响的行数. public int update(String table, ContentValues values, String whereClause, String[] whereArgs) table表名values更新的值whereClause可选的更新条件whereArgs更新条件的值 public boolean updataInfo(UserBean userBean) {SQLiteDatabase sqLiteDatabase this.getWritableDatabase();ContentValues cv new ContentValues();cv.put(COLUNM_NAME, userBean.getName());cv.put(COLUNM_PHONE, userBean.getPhone());cv.put(COLUNM_PASSWORD, userBean.getPassWord());int result sqLiteDatabase.update(STUTDY_SQLITE_TABLE, cv, ID ?, new String[]{String.valueOf(userBean.getId())});return result 0;} D-删除 需从表中删除行您需要提供选择条件以标识 delete() 方法的目标行。该机制与 query() 方法的目标选择参数的工作方式相同 delete() 方法的返回值表示从数据库中删除的行数。 public int delete(String table, String whereClause, String[] whereArgs)  table:表名whereClause:可选的更新条件whereArgs:更新条件的值 public boolean deleteOne(UserBean userBean) {SQLiteDatabase sqLiteDatabase this.getWritableDatabase();System.out.println(要删除的id: userBean.getId());/* 删除语句返回的是受影响的行数* 行数0返回true 否则返回false */int result sqLiteDatabase.delete(STUTDY_SQLITE_TABLE, COLUNM_ID ?, new String[]{String.valueOf(userBean.getId())});return result 0;} 保留数据库连接 由于在数据库关闭时调用 getWritableDatabase() 和 getReadableDatabase() 的成本比较高因此只要有可能需要访问数据库就应保持数据库连接处于打开状态。通常情况下最好在发出调用的 Activity 的 onDestroy() 中关闭数据库。 Override protected void onDestroy() {dbHelper.close();super.onDestroy(); }
http://www.pierceye.com/news/239189/

相关文章:

  • 上海松江做网站公司wordpress 网站暂停
  • 太仓苏州网站建设网站的规划与建设课程设计
  • 遵义住房城乡建设厅网站电子商务网店毕业设计
  • 惠州市博罗县建设局网站防静电产品东莞网站建设技术支持
  • 茂名整站优化百度一下 你知道首页
  • 郑州网站微信微博维护品牌网站建设流程图
  • 网站建站销售怎么做做门窗安装去哪些网站找生意
  • 太原建站司点击查看荆州网站开发
  • 个人音乐网站开发宁波网站推广工作室电话
  • 建设部网站 造价工程师wordpress忘了秘密
  • 如何分析一个网站建设策划案湖南网络推广公司大全
  • 惠州市建设工程交易中心网站如何制作网页导航栏
  • 保山网站建设哪家好做led视频好的网站
  • 如何利用网站策划做好网站建设申请域名要多少钱
  • 专业做公司logo的网站谷歌网站推广方案
  • 公司网站建设情况说明网站开发用php好吗
  • 网站做关键词库的作用空间怎么做网站
  • 制作网站公司名称网络营销与策划实践报告
  • 哈尔滨手机网站建设价格低长沙网业公司
  • 如皋网站建设公司网站推广优化排名
  • 行业网站方案网站搭建合同
  • 如何用ps做网站图标吉林省长春市建设局网站
  • 北京高端网站建设服务广州百度快速排名优化
  • 电子商务网站开发课程设计网站建设石家庄
  • 好的公司网站有什么用烟台建设集团招聘信息网站
  • 网站制作需要多长时间网站代建设费用
  • 淘宝客网站设计台州建设银行官方网站
  • 婚纱网站建设规划书2023全国企业公司大黄页
  • 网站seo的关键词排名怎么做的wordpress 在线留言
  • 建一个c2c网站要多少钱小程序云开发文档