Articles of SQLite

如何在sqlite数据库中添加日期

我有sqlite database private static final String DB_PROCESS_CREATE = “create table ” + DB_TABLE_PROCESS + “(” + PROCESS_ID + ” integer primary key autoincrement, ” + PROCESS_DATE + ” date);”; 我创建它db.execSQL(DB_PROCESS_CREATE); 如何在此数据库中添加日期值? 我试过了 : String date = new SimpleDateFormat(“yyyy.MM.dd”).format(Calendar .getInstance().getTime()); ContentValues cv = new ContentValues(); cv.put(db.PROCESS_DATE,Date.valueOf(date)); db.mDB.insert(db.DB_TABLE_PROCESS, null, cv)); 但后来我得到error : “The method put(String, String) in […]

在android中使用sqlite连接表的最佳方法

我试图find在Android应用程序中使用sqlite数据库在我的两个表上进行简单表连接的最佳方法。 是使用CursorJoiner最简单的方法还是有更简单的方法?

在sqlite中创建一个索引列

我可以在sqlite的create table命令中的列上创建索引吗? 我在Android shell的sqlite3中尝试了以下命令。 它似乎工作。 sqlite> create table mytest (id integer indexed); sqlite> .schema CREATE TABLE mytest (id integer indexed); 但是,在sqlite的查询语言规范中,不支持指定要编制索引的列: http://www.sqlite.org/lang_createtable.html 我错过了什么? 谢谢。

如何在SQLiteDatabase查询中测试游标是否为空

我有一个SQL表,它由以下代码创建: public void onCreate(SQLiteDatabase db) { db.execSQL(“CREATE TABLE ” + TABLE_NAME + ” (” + _ID + ” INTEGER PRIMARY KEY AUTOINCREMENT, ” + SUBJECT + ” TEXT NOT NULL,” + TOPIC + ” TEXT NOT NULL, ” + LECTURENUMBER + ” TEXT NOT NULL, ” + PAGENUMBER + ” TEXT NOT NULL, ” + […]

连接池无法授予与线程的连接

我正在使用GreenDAO在Android中进行数据库处理。 当执行许多数据库更改(> 15.000)时,我收到此错误消息: 数据库’/ data / data / …’的连接池无法使用标志0x1授予与线程312(Thread-312)的连接30.000002秒。 一切都被困住了。 为什么会发生这种错误?

Sqlite检查表是否为空

好吧,我有一个数据库,它有很多表。 但通常表都是空的。 我想检查数据库表是否为空。 如果IF表为空,程序将填充它。 public static long queryNumEntries (SQLiteDatabase db, String table) 我将使用它,但它要求API 11。

如何将Room Persistence Library导入Android项目

我最近看到Google I / O Room Persistence Library上宣布的新function与Android上的Sqlite数据库一起使用。 我一直在寻找官方文档 ,我没有find我应该导入到我的Android项目上的gradle文件的依赖项。 有人可以帮个忙吗?

SQLite同时读写

我已经阅读了很多主题,但无法找出问题的答案:是否可以同时读写? 我有后台线程更新一些数据,UI需要存储在DB中的小块数据。 因此在UI线程中执行SELECT操作。 但它在更新过程中会阻止。 结果,UI冻结了几秒钟。 写作时,有没有人能从DB读取成功? 它可以在iPhone上读写DB。 这种差异的原因是否与本机sqlite函数的包装器同步实现?

具有索引的Android SQLite性能

我的Android应用程序通过使用在用户PC上生成并传输到设备的SQLite数据库来工作。 一切正常,但我没有预料到拥有大量数据的用户数量。 在这些情况下,UI在等待获取数据时非常缓慢。 我已经尝试了一些技巧,我“确定”会加快速度,但似乎没有任何明显的效果。 我的查询几乎都非常简单,通常是WHERE子句的单个“col = val”和列中的INTEGER数据。 所以我对查询做不了多少。 最新的,我不是任何SQL专家,是在PC上使用“CREATE INDEX”命令,认为这些索引用于加速数据库搜索。 索引显着增加了数据库文件的大小,所以我很惊讶它似乎对我的应用程序的速度没有任何影响! 在没有索引的情况下花费8秒钟进行填充的屏幕仍然需要大约8秒钟。 我希望能把事情降到至少一半。 我现在想知道的是,如果Android上的SQLite实现完全使用数据库索引,或者我只是通过生成它们来浪费空间。 谁能回答这个问题? 还有什么其他的东西试图加快访问速度? (对于它的价值,在绝对的基础上,用户没有什么可抱怨的。到目前为止我的最坏情况用户的数据产生了630,000条记录(15个表),所以只有这么多可能!) Doug Gordon GHCS Systems

为什么Android 4.0上的INSERT和UPDATE速度较慢?

当Android 4.0于2011年12月推出Nexus S时,我们进行了一些性能测试: http : //greendao-orm.com/2011/12/17/sql-performance-in-android-4-0/ 令人惊讶的是,在同一部手机上更新到Android 4.0后,UPDATE和INSERT性能下降了一半(!)。 我们没有时间进一步调查,但也许其他人呢? 可以推测,文件系统已经改变等等,但我正在寻找确凿的事实。 ;)