jjzjj

SQLiteOpenHelper

全部标签

android - 对 CursorLoaders 感到困惑并将它们与自定义 SQLiteOpenHelper 一起使用

我正在编写一个应用程序,允许人们为他们需要完成的各种任务设置闹钟。我目前的计划是将所有相关数据存储到SQLite数据库中。为此,我创建了一个扩展SQLiteOpenHelper的类,并用方法填充它来处理我希望必须接受的所有CRUD。知道在一个线程上完成所有处理通常不是一个好主意,我寻找在线程之间分离工作的方法,并找到了CursorLoader和LoaderManager,这看起来很理想,因为它们在Android兼容性库中可用。但是,LoaderManager似乎需要一个由tutorialinthedocumentation进行的ContentProvider,而且我还没有真正看到需要对

android - 我应该在 SQLiteDatabase 和 SQLiteOpenHelper 上调用 .close()

SQLiteOpenHelperdbOpenHelper=new(ctx,nameofdb);SQLiteDatabasedb=dbOpener.getWritableDatabase();我是否必须对这两个都调用.close(),还是只调用其中一个就足够了?如果是,那么是哪一个?SQLiteDatabaseSQLiteOpenHelper我遇到的问题是我在Eclipse的DDMSView中看不到一个特定的行,但是当我使用Cursor获取它时,它显示我确实有那个条目。所以我想知道这可能是由于没有正确关闭数据库造成的?任何可以提供帮助的人都会很棒。谢谢! 最佳

android - 我应该在 SQLiteDatabase 和 SQLiteOpenHelper 上调用 .close()

SQLiteOpenHelperdbOpenHelper=new(ctx,nameofdb);SQLiteDatabasedb=dbOpener.getWritableDatabase();我是否必须对这两个都调用.close(),还是只调用其中一个就足够了?如果是,那么是哪一个?SQLiteDatabaseSQLiteOpenHelper我遇到的问题是我在Eclipse的DDMSView中看不到一个特定的行,但是当我使用Cursor获取它时,它显示我确实有那个条目。所以我想知道这可能是由于没有正确关闭数据库造成的?任何可以提供帮助的人都会很棒。谢谢! 最佳

android - 将 JSON 字符串解析为 SQLite 表的最快方法是什么?

我正在编写一个Android应用程序,它偶尔需要下载大约1MB并包含大约1000个元素的json字符串,并将每个元素解析到SQLite数据库中,我用它来填充ListActivity。尽管下载和解析不是每次与应用程序交互时都需要完成的事情(仅在首次运行或用户选择刷新数据时),但我仍然担心解析部分是花费的时间太长,大约需要两到三分钟-从电话应用程序的角度来看,这似乎是永恒的!我目前正在使用Gson将每个json对象解析为我定义的自定义对象,然后使用SQLiteOpenHelper将其输入数据库。我的问题是-是否有更快的实现方式?不使用Gson直接与json交互会不会明显更快?还是我在下面的

android - 将 JSON 字符串解析为 SQLite 表的最快方法是什么?

我正在编写一个Android应用程序,它偶尔需要下载大约1MB并包含大约1000个元素的json字符串,并将每个元素解析到SQLite数据库中,我用它来填充ListActivity。尽管下载和解析不是每次与应用程序交互时都需要完成的事情(仅在首次运行或用户选择刷新数据时),但我仍然担心解析部分是花费的时间太长,大约需要两到三分钟-从电话应用程序的角度来看,这似乎是永恒的!我目前正在使用Gson将每个json对象解析为我定义的自定义对象,然后使用SQLiteOpenHelper将其输入数据库。我的问题是-是否有更快的实现方式?不使用Gson直接与json交互会不会明显更快?还是我在下面的

android - SQLiteDatabase.openDatabase 与 SQLiteOpenHelper.getReadableDatabase

这两种方法有什么区别吗?两者都返回一个打开的SQLiteDatabase。如果一个数据库不存在,两者都可以创建一个数据库。当需要读/写时,SQLiteOpenHelper也有getWriteableDatabase...我应该使用哪种方法以及在哪里使用?根据我看到的示例代码,我首先使用SQLiteOpenHelper创建我的数据库,然后在需要使用数据库时调用SQLiteDatabase.openDatabase。 最佳答案 openDatabase()更灵活,允许您指定语言环境等,但在大多数情况下您不需要显式提供这些详细信息Andr

android - SQLiteDatabase.openDatabase 与 SQLiteOpenHelper.getReadableDatabase

这两种方法有什么区别吗?两者都返回一个打开的SQLiteDatabase。如果一个数据库不存在,两者都可以创建一个数据库。当需要读/写时,SQLiteOpenHelper也有getWriteableDatabase...我应该使用哪种方法以及在哪里使用?根据我看到的示例代码,我首先使用SQLiteOpenHelper创建我的数据库,然后在需要使用数据库时调用SQLiteDatabase.openDatabase。 最佳答案 openDatabase()更灵活,允许您指定语言环境等,但在大多数情况下您不需要显式提供这些详细信息Andr

android - 它是如何工作的 SQLiteOpenHelper 上下文

我有一个包含两个Activity的应用。其中一个列出了几个值,而另一个将新值添加到数据库。我有一个类从SQLiteOpenHelper扩展并管理数据库连接、查询等。现在,我了解到在SQLiteOpenHelper的构造函数中,您必须传递一个上下文,该上下文用于确定它是否必须创建一个新数据库或打开一个现有数据库。但是如果我在每个Activity中都有一个SQLiteOpenHelper类的实例,那么上下文就会不同。有没有办法避免这种情况?谢谢。 最佳答案 传入应用程序上下文(.getApplication())而不是Activity。

android - 它是如何工作的 SQLiteOpenHelper 上下文

我有一个包含两个Activity的应用。其中一个列出了几个值,而另一个将新值添加到数据库。我有一个类从SQLiteOpenHelper扩展并管理数据库连接、查询等。现在,我了解到在SQLiteOpenHelper的构造函数中,您必须传递一个上下文,该上下文用于确定它是否必须创建一个新数据库或打开一个现有数据库。但是如果我在每个Activity中都有一个SQLiteOpenHelper类的实例,那么上下文就会不同。有没有办法避免这种情况?谢谢。 最佳答案 传入应用程序上下文(.getApplication())而不是Activity。

iOS SQLite.swift,关于应用升级?

关于伟大而神奇的SQLite.swift,我在想您在应用商店中有一个应用程序,v7。升级到v8。用户X使用应用商店将v7升级到v8。比如说在v8中,我们对其中一个sql表进行了轻微的更改,可能会添加一列或重命名一列。在这种情况下,是否应该或必须在SQLite.swift中做任何特殊的事情?SQLite.swift的处理方式是什么?(例如,Android的onUpgrade中有一个方便的helperclass概念……它有自己的一系列复杂问题。) 最佳答案 执行SQLiteOpenHelper很简单:db=SQLiteDatabase.