标签: android-sqlite

如何查看我的手机上运行的Android应用程序数据库

我正在手机上安装并运行一个Android应用程序,出于某些测试目的,我想查看我手机上的应用程序数据库.现在我的问题如何获得这些数据库和表???? 请事先回复谢谢.....

sqlite android android-sqlite

4
推荐指数
1
解决办法
7543
查看次数

继续得到"SQLiteException:no such table"异常

我试图创建SQLiteDatabase来保存我从JSONObject获取的数据来自post请求.我的主要课程:

public class MainActivity extends Activity {

    static JSONObject result;
    public Context mContext;
    public SQLiteDatabase db;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mContext = getApplicationContext();
       new UpdateData().execute();


    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }

    private class UpdateData extends AsyncTask<String, Void, JSONObject>{

        private JSONObject object;
            @Override
            protected JSONObject doInBackground(String... params) {
                try {
                    HttpClient client = new DefaultHttpClient();  
                    String postURL = "http://test.com";
                    HttpPost post = new HttpPost(postURL);
                        List<NameValuePair> crc = new ArrayList<NameValuePair>();
                        crc.add(new BasicNameValuePair("crc", …
Run Code Online (Sandbox Code Playgroud)

java android exception android-sqlite

4
推荐指数
1
解决办法
1313
查看次数

在sqlite中重音搜索(android)

我有一个列,其中一些元素包含重音字母.例如:Grambú

我的要求是,当我搜索"Grambu"时,我也应该在结果中获得"Grambú".

对于此要求,我尝试对该特定列使用"COLLATE NOCASE"参数.但那没有用.

当我在网上搜索解决方案时,我发现很多人建议对重音字符进行规范化,并根据它创建另一个列作为唯一选项.

这个问题还有其他更简单的解决方案吗?

sqlite android android-sqlite

4
推荐指数
1
解决办法
6723
查看次数

删除表vs删除其内容sqlite

在我的应用程序中,我必须删除表的全部内容并重新填充多次

在这种情况下,我有两个解决方案:

1-下降,撤回并填写表格

"DROP TABLE IF EXISTS TABLE_NAME"
Run Code Online (Sandbox Code Playgroud)

2-删除所有内容并重新填充

"DELETE FROM TABLE_NAME"
Run Code Online (Sandbox Code Playgroud)

现在哪种解决方案更有效?

database sqlite android-sqlite

4
推荐指数
2
解决办法
1373
查看次数

listview在android中显示数据库中的数据

我是android的新手.我想知道如何在listview中显示数据库中的数据.它没有向数据库添加数据.我只是显示我们存储在数据库中的任何内容.请帮助我实现这一点...在此先感谢...

android android-listview android-sqlite

4
推荐指数
1
解决办法
4万
查看次数

Sqlite数据库更新了一行android

我正在开发一个Android应用程序,我需要根据某个where子句更新表中的列.这是下面的代码,

public void updatethekeyofweeklycolumn(String profilename, String keystemp) 
{
    SQLiteDatabase db = this.getWritableDatabase();
    ContentValues values = new ContentValues();

    values.put(Profile_keysofweekly, keystemp);

    db.update(TABLE_PROFILE_SETTINGS_FOR_WEEKLY, values,Profile_Name_for_weekly +" = "+profilename, null);
}
Run Code Online (Sandbox Code Playgroud)

上面的代码在where子句为null时工作正常,但是它设置了一个与whereclause关闭的力.我的查询错了吗?

java database sqlite android android-sqlite

4
推荐指数
1
解决办法
4万
查看次数

查询是否返回空游标

我总是看到人们说它的游标永远不会为空,所以你不需要检查是否为null,但是还有其他人说游标可以为null而你总是要检查它.

所以看看这里的查询方法,它确实显示返回null,所以我不知道我是否只是缺少一些东西,或者是人们说光标永远不会出错?

你或者你不需要在查询Cursor时检查是否为null?

android android-cursor android-sqlite

4
推荐指数
1
解决办法
1305
查看次数

更新新版本的应用程序时删除sqlite数据库

我在Google Playstore上的SQLite数据库中上传了一个包含22个表的apk(版本1.0).

现在我想在新版本(版本2.0)的应用程序中使用36个表更新数据库.

我存储datebase在默认位置,所以当我按下应用程序管理器中的"清除数据"时,数据库将被删除.

我只想知道在用户更新新版本时如何删除旧数据库(与清除数据相同)?

更新:

如果在从Play商店更新应用程序时有任何清除数据的解决方案,那么也回答了我.

非常感谢您的帮助.

谢谢.

database sqlite android clear android-sqlite

4
推荐指数
2
解决办法
1万
查看次数

(Android)在内部存储中查找路径/ Android

Android中是否有一种方法可以返回内部存储上的数据路径?

我有2个Android智能手机(三星s2和s7边缘)我安装了一个应用程序.我想在此路径中使用sqliteDB:

/Android/data/application.most/files/most_db
Run Code Online (Sandbox Code Playgroud)

问题是在三星s2中我必须使用此路径来获取数据库:

private static final String db_path = "/storage/sdcard0/Android/data/org.application/files/application_db";
Run Code Online (Sandbox Code Playgroud)

Instaed,在s7我必须使用这个:

private static final String db_path = "/storage/emulated/0/Android/data/application.most/files/application_db";
Run Code Online (Sandbox Code Playgroud)

我想通过设备独立地采用这条路径.

你能帮助我吗?

提前致谢.

android path android-sqlite

4
推荐指数
1
解决办法
6万
查看次数

处理实体和Pojos

对于Room来说还是新手,虽然我发现的大部分教程都与简单的表格和CRUD操作有关,但我仍然坚持不懈地进行改进.

我们来看看这个样本结构.

用户实体

@Entity(tableName = "users")

public class UsersEntity{
    @PrimaryKey(autoGenerate = true)
    private long id;

    @NonNull
    private String name;

    @NonNull
    private long roleId;
}
Run Code Online (Sandbox Code Playgroud)

角色实体

  @Entity(tableName = "roles")

    public class RolesEntity{
        @PrimaryKey(autoGenerate = true)
        private long id;

        @NonNull
        private String name;
    }
Run Code Online (Sandbox Code Playgroud)

第一个问题:是否应该Entity扩展对象以替换POJO?或者将实体和POJO作为单独的类?

从Room设置扩展,我看到User POJO的方式是:

public class User{
   private long id;
   private Role role;
}
Run Code Online (Sandbox Code Playgroud)

基本上,如果用户将来自Web服务的json响应或用户在应用程序的输入字段中输入,则此设置应该都有效.

但是,这引出了第二个问题:如何插入和检索用户信息?插入似乎是可能的,因为可能有类似的东西

userDAO.insertRole(userId)

但是如何Role通过使用Room和userDAO来获取User 的对象?我发现不适合做以下事情:

user = userDao.getUser(userId)
user.setRole(roleDao.getRole(user.getRoleId)
Run Code Online (Sandbox Code Playgroud)

第三个问题:将表列与_(例如role_id)表示似乎是一个好习惯,但在java roleId中建议使用类属性.如果的结果@Query,例如select role_id from... …

android android-sqlite android-room android-architecture-components

4
推荐指数
1
解决办法
513
查看次数