繁体   English   中英

如何生成具有可变列数表的数据库?

[英]How to generate database with table of variable number of columns?

在我的Android应用中,我需要以表的形式临时存储一些数据,如下所示:

id | 第1栏| 第2列| ... | 第n列

每当用户按下按钮时,就会从服务器下载数据。 但是,每次用户从服务器下载数据表时,数据表都没有固定的列数(以及行数)。 例如,服务器可能第一次发送3列数据。 然后它可能第二次发送5列数据,等等。

在这种情况下,我认为数据库可能是要使用的正确数据结构。 我的计划是创建一个数据库,然后根据需要添加和删除表。 因此,我一直在阅读有关Android数据库的各种教程(其中一个示例是http://www.codeproject.com/Articles/119293/Using-SQLite-Database-with-Android# )。 在我看来,我无法使用sqlite数据库创建具有可变列数的新表。 这个对吗? 在onCreate(SQLiteDatabase db)方法中,必须使用已知的列数及其数据类型指定“创建表”命令。 我可以提供几个“创建表”命令,每个命令具有不同的列数,但是看起来很粗糙。 有没有一种方法可以动态创建具有可变列数的数据库表?

另一种选择可能使用多个哈希表,每个哈希表存储数据表的一列。 如果数据库方法不可行,我正在认真考虑这种方法。 任何更好的建议都欢迎。

在SQLite数据库中没有可变的列数。 此外,动态添加和删除表似乎是一个可怕的技巧。

听起来您想存储与ID相关联的值数组。 我建议您从行而不是列的角度考虑。 使用表结构,例如(id,索引,值); 服务器返回的每个值数组都会导致存储这些值所需的行数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM