赞
踩
首先需要获取操作数据库帮助对象 Databasehelper , 然后通过这个对象调用这个对象的getRdbStore方法 , 这个方法需三个参数 1. StoreConfig类型的参数 , 2.version(整型) , 3.抽象类 。 这个抽象类里面有两方法 onCreate 和 onUpgrade , 其中 onCreate 是在创建数据表示被调用 换句话说就是监听数据表的创建的 而 onUpgrade 是监听数据表的提升和更新的 ;调用这个方法的目的是为了得到RdbStore对象 在鸿蒙开发中这个对象是专门用来操作数据表的 , 而onCreate方法里携带了一个参数就是RdbStore 对象 。 然后就可以使用这个对象来操作数据表执行sql语句了 ,最后注意:
别忘记关闭资源RdbStore ;
- <?xml version="1.0" encoding="utf-8"?>
- <DirectionalLayout
- xmlns:ohos="http://schemas.huawei.com/res/ohos"
- ohos:height="match_parent"
- ohos:width="match_parent"
- ohos:alignment="center"
- ohos:orientation="vertical">
-
- <Button
- ohos:id="$+id:sqlite_select_01_"
- ohos:height="match_content"
- ohos:width="match_parent"
- ohos:text_size="30vp"
- ohos:text="查询数据表"
- />
-
- </DirectionalLayout>
-
- import com.example.server.ResourceTable;
- import com.example.server.baseability.baseability;
- import ohos.aafwk.ability.AbilitySlice;
- import ohos.aafwk.content.Intent;
- import ohos.agp.components.Button;
- import ohos.agp.components.Component;
- import ohos.app.Context;
- import ohos.data.DatabaseHelper;
- import ohos.data.preferences.Preferences;
- import ohos.data.rdb.RdbOpenCallback;
- import ohos.data.rdb.RdbStore;
- import ohos.data.rdb.StoreConfig;
- import ohos.data.resultset.ResultSet;
-
- public class sqliteSlice extends baseability {
- public DatabaseHelper helper ;
- public StoreConfig config ;
- private final String NAME = "data.sqlite" ;
- private RdbStore rdbStore ;
- private Button select ;
- // RdbStore rdbStore ;
- @Override
- public void onStart(Intent intent) {
- super.onStart(intent);
- super.setUIContent(ResourceTable.Layout_ability_sqlite);
- getcpt();
- event();
- }
-
- @Override
- public void onActive() {
- super.onActive();
- }
-
- @Override
- public void onForeground(Intent intent) {
- super.onForeground(intent);
- }
-
- @Override
- public void getcpt() {
- select = (Button)findComponentById(ResourceTable.Id_sqlite_select_01_) ;
- }
-
- @Override
- public void init() {
-
- }
-
- @Override
- public void event() {
- select.setClickedListener(new Component.ClickedListener() {
- @Override
- public void onClick(Component component) {
- create(NAME , getContext());
- }
- });
-
- }
- //创建表
- private void create(String name , Context context){
- helper = new DatabaseHelper(context) ;
- config =StoreConfig.newDefaultConfig(name);
- helper.getRdbStore(config, 1, new RdbOpenCallback() {
- @Override
- public void onCreate(RdbStore rdbStore) {
- //创建表的时候调用
- String SQL = "create table info (id int(10) , name varchar(30))";
- String sql ="insert into info values(1, 'keven') ;";
-
- rdbStore.executeSql(SQL);
- System.out.println("info创建成功");
- rdbStore.executeSql(sql);
- System.out.println("插入成功");
- select(rdbStore);
- }
-
- @Override
- public void onUpgrade(RdbStore rdbStore, int i, int i1) {
-
- }
- });
- // rdbStore = helper.getRdbStore(config, 1, callback , null); //用它来进行操作
-
- }
-
- public void select (RdbStore rdbStore){
- String sql = "select * from info;" ;
- ResultSet resultSet = rdbStore.querySql(sql, null);
- if (resultSet.goToFirstRow()){
- System.out.println("数据为:"+ resultSet.getInt(0) +" "+ resultSet.getString(1));
- System.out.println("查询完毕");
- }else {
- System.out.println("查找不到");
- }
- }
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。