2 slaks SLaks 于 2013.06.05 17:30 提问

在 SQlite 数据库中存储 Null

我想实现下面的代码:

String updateQuery ="INSERT INTO MAAccounts(userId, accountId, accountType, accountName, parentAccountId ) VALUES(?, ?, ?, ?, ?)"; 


        Cursor c = mDb.rawQuery(updateQuery, new String[]{
                stringToDB(account.userId),
                integerToDB(account.accountId).toString(),
                integerToDB(account.accountType.getValue()).toString(),
                stringToDB(account.accountName),
                integerToDB(account.parentAccountId).toString(),
                });

现在 parentAccoudId (Type int )的初始值是 null。实际上是把null转化为 to.String。
当我运行它时,给出空指针的错误。
我想在数据库中存储null值,如何实现?

2个回答

shaojie519
shaojie519   2013.06.05 17:53
已采纳

你可以使用android 提供的insert语句,使用
ContentValues values = new ContentValues();
values.put("key", Object);
的方式,你就不用关心Object是否为空的情况了,
或者你自己手动判断下Object是否为null,不等于null的情况在调用toString(),否则直接赋值null.

luhuajcdd
luhuajcdd   2013.06.05 21:07

数据库中的一条记录,如果某列没有值, 那么其实就是null

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!