-
您可以将任何数据类型放入任何列中。 当一个值插入到数据库中时,SQLite会检查其类型。 如果类型与关联的列不匹配,SQLite 会尝试将值转换为列的类型。
如果无法转换,则该值将存储为其具有的类型。 例如,可以将字符串放在整数列中。 SQLite 称其为“清单类型”。
此外,SQLite 不支持一些标准的 SQL 功能,例如外键约束、嵌套转换和右外连接、完全外连接,以及一些 Alter Table 功能。
Android 提供了 sqliteopenhelper 来帮助您创建数据库,您可以通过继承 sqliteopenhelper 类轻松创建数据库。 sqliteopenhelper 类封装用于创建和更新数据库的逻辑,具体取决于开发应用程序的需要。
sqliteopenhelper,至少需要实现三种方法:
1 构造函数,它调用父类 sqliteopenhelper 的构造函数。 此方法需要四个参数:上下文(例如,活动)、数据库名称、可选游标工厂(通常为 null)和表示所使用的数据库模型版本的整数。
2 oncreate() 方法,将 SQLiteDatabase 对象作为参数,填充表并根据需要初始化此对象上的数据。
3 onupgrage() 方法,它采用三个参数,一个 sqlitedatabase 对象、一个旧版本号和一个新版本号,以便您知道如何将数据库从旧模型转换为新模型。
-
是的,可以保存,但您使用的可视化工具每页最多可以显示 1000 个条目,您可以查找翻页按钮以查看剩余数据。
-
刚试过,我可以写1000多条数据。 而一个数据库连1000条数据都存储不了,那它还是一个数据库吗? 至于解决方案,我不知道,我没办法。
-
其实已经保存好了,可能查看的时候,只能显示1000个,翻页的时候可以看到后续信息。
-
oncreate() 中的语句是否完整。
我也遇到过这个问题,如果你确定没有问题的话。
只需尝试调用创建表的语句,并在您创建的数据库类(不是继承 sql 帮助程序的类,而是要执行添加、删除、修改和查询的数据库调用的类)中执行它。
如果在这种情况下表成功,则不会调用从数据库类继承的类中的 oncreate() 方法。
有时会发生这种情况。
再试几次。
无论如何,我就是这样解决的。
希望对你有所帮助。
我的QQ是446504664,现在我也在学习android,有兴趣可以一起学习。
-
模拟器不好说,可能是你不分配内存,创建不了,看不出问题,也不去目录找,用一段数据读写操作测试,不知道创建是否成功
-
您没有数据库连接...
-
打印日志以查看 ** 是否异常。
-
假设 A 是本地表,B 是服务器表,主键是 Key Delete data 不在 A 表 B 中的数据。
delete from a where not in (select from b)
根据 b 的数据更新(或插入)a
insert or replace into a(key, column1) select , from b where
-
在命令行上,遵循数据库文件的文件名;
如果未提供此参数,则数据库是内存中数据库 - 当 sqlite3 退出时立即从内存中消失;
-
首先,您需要创建一个新的数据库,并且将保存在此数据库中创建的表
sqlite
create table tab(num int);