wehenever我看大约SQLite的教程,我总是看到,像INT或字符串(TEXT,VARCHAR)值被用来(与REAL或DOUBLE工作)。例如,我如何使用DOUBLE? 我创建了一个值为DOUBLE的表格,我想从EditText插入一个值DOUBLE。每当我尝试,我的应用程序崩溃,为什么?SQLite的数字数据类型
-3
A
回答
0
如何使用DOUBLE,例如?
的列类型(例如INT VARCHAR DOUBLE甚至RUMPLESTILTSKIN将被接受作为列键入例如CREATE TABLE mytable (data1 RUMPLESTILTSKIN)
)并不重要。
这是由于SQLite列类型的灵活性如解释here,其也引用Datatypes In SQLite Version 3。
要存储双精度数据,只需将其存储为一个字符串(或者在使用SQLite数据库insert
方法时通过ContentValues
传递的双精度数据),例如,基于yourEditText.getText().toString()
并使用游标的getDouble
方法将其作为双倍数来检索。上面的链路具有的如何getDouble
工作,即它总是返回一个双(除了如果数据已被存储为BLOB,在这种情况下发生异常(截留在实施例中的链接))的例子。
实例(其中db是SQLiteDatabase): -
1使用execSQL和SQL
// Not recommended
String sql = "INSERT INTO yourtable (yourdoublecolum) VALUES(" + youredittext.getText.toString() + ")";
db.execSQL(sql);
2使用SQLitedatabase insert
方法与字符串
// Not recommended
ContentValues cv = new ContentValues();
cv.put("yourdoubleccolumn", youredittext.getText.toString());
long insertedid = db.insert("yourtable",null,cv);
3使用SQLitedata insert
方法与双
// Better but still potential for exception when parsing so
// need to ensure that youredittext is acceptable.
ContentValues cv = new ContentValues();
cv.put("yourdoubleccolumn", Double.parseDouble(youredittext.getText.toString()));
long insertedid = db.insert("yourtable",null,cv);
相关问题
- 1. SQLite数据类型
- 2. Sqlite数据类型映射到.net(CLR)框架数据类型
- 3. 确定SQLite中列的数据类型
- 4. sqlite数据库中的TIMESTAMP类型
- 5. Android的SQLite数据类型不匹配
- 6. Sqlite:重命名列和数据类型
- 7. SQlite主键:数据类型不匹配
- 8. SQLite日期和时间数据类型
- 9. 在SQLite中声明数据类型
- 10. SQLite不检查数据类型
- 11. SQLite中“文本”和“字符串”数据类型的区别
- 12. Sqlite存储字符串值在数字或真正的数据类型
- 13. 尝试将数据插入到SQLite数据库时数据类型不匹配
- 14. sql数据库 - 数字或字符串数据类型
- 15. C#数字数据类型命名
- 16. Java数据类型到字节数组
- 17. Angular FormControl数据类型(数字)?
- 18. SQL Server:Openquery到Oracle:数字/数字的数据类型
- 19. 字符串到数据类型类
- 20. MATLAB:从符号数据类型到数字数据类型转换
- 21. 数字类型
- 22. 数据类型
- 23. 配置单元中字母数字字符的数据类型
- 24. 类型类Haskell中的数据类型
- 25. 钱+字符的SQL数据类型
- 26. java中的字符串数据类型
- 27. C中的数据类型(字符)
- 28. sqlite的setBytes()不工作的BLOB数据类型在Windows
- 29. SQLite中我的表的最佳数据类型
- 30. 可以通过Mysql或sqlite的Blob数据类型存储varchar数据吗?
你可以发布你的代码和LogCat? –
注意谷歌的'sqlite数据类型'? –