2012-04-10 131 views
0

尝试在android 中的edittext中插入数据,但数据未插入。数据没有插入到数据库中的sqlite?

我的代码 -

ContentValues values= new ContentValues(); 
values.put(KEY_EMAIL, GlobalVar.email); 
values.put(KEY_NAME, GlobalVar.name); 
myDataBase.insert(MY_EMP, null,values); 

我的日志CAT

04-10 09:50:20.121: E/running(280): create database called 
04-10 09:50:20.121: E/running(280): chek database called 
04-10 09:50:20.121: E/running(280): chek database try block called 
04-10 09:50:20.171: E/running(280): create database called try block 
04-10 09:50:20.191: E/running(280): copy database called 
04-10 09:50:20.211: E/running(280): open data successfull 
04-10 09:50:50.720: W/KeyCharacterMap(280): No keyboard for id 0 
04-10 09:50:50.720: W/KeyCharacterMap(280): Using default keymap: /system/usr/keychars/qwerty.kcm.bin 

`

+1

看来你错过了相关的日志输出,因为没有堆栈跟踪。这段代码是否抛出异常? – 2012-04-10 04:33:20

+0

请提供一些来自您的日志文件的更多信息,如@Tyler Treat提到的。 – UVM 2012-04-10 04:34:27

+0

你怎么能说数据没有插入SQLite ..你检查过数据库中的数据库在任何SQLite浏览器? – MKJParekh 2012-04-10 05:12:31

回答

1

如果不提供所有(为不具有默认值,接受空,或者是自动递增的所有列即数据)所需的列数据,然后在插入命令将失败。如果insert失败,它不会引发异常。它只返回-1。

检查您的通话insert,或者更好的结果,呼叫切换到

myDataBase.insertOrThrow(MY_EMP, null,values); 

,然后检查日志的异常消息假设有一个。

1

看来ür短缺的myDataBase.insert(MY_EMP,空,值)所需的参数; 它应该是myDataBase.insert(“Table Name”,“First column name”,cv);

试试这个

+1

这不一定正确。第二个参数是空列黑客(它肯定不是必需的),所以除非他插入一个完全空行,我认为他不是这个行,这是错误的。 – 2012-04-10 04:58:17

+0

同意@TylerTreat – MKJParekh 2012-04-10 05:11:34