【求助】一个数据库更新失败的问题

风吹不走雨打不动 2011-04-25 04:36:54
我的数据库如下
String sql="create table if not exists "+TB_NAME+"(" +
"USERID varchar," +
"TOKEN varchar," +
"TOKENSECRET varchar," +
"USERNAME varchar varchar," +
"USERICON blob"+
")";

更新数据的代码如下
ContentValues values = new ContentValues();
values.put("USERNAME", userName);
final ByteArrayOutputStream os = new ByteArrayOutputStream();
userIcon.compress(Bitmap.CompressFormat.PNG, 100, os);
values.put("USERICON", os.toByteArray());
Log.e("UserId", UserId + "");
Log.e("USERNAME", userName + "");
Log.e("USERICON", os.toByteArray() + "");
int id = db.update(SqliteHelper.TB_NAME, values, "USERID = " + UserId, null);
db.close();

程序执行完毕没有报错过,但是数据库里USERNAME一直是空值NULL,我开始以为是sql语句中没加 ' 和 ' 的问题,所以我改了下int id = db.update(SqliteHelper.TB_NAME, values, "USERID = '" + UserId + "'", null);但是执行程序USERNAME字段的值任然是NULL,想请教下,还有可能是我哪里的疏忽呢?

...全文
66 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
也就是说初始值是NULL,那么是不能直接更新的,是这个意思么?
  • 打赏
  • 举报
回复
谢谢,对我很有帮助
xqhrs232 2011-04-26
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 potreeday 的回复:]
也就是说初始值是NULL,那么是不能直接更新的,是这个意思么?
[/Quote]

应该是没有INSERT的话就更新不了,NULL是有数据的,只是数据为NULL。
xqhrs232 2011-04-25
  • 打赏
  • 举报
回复
应该是没有插入初始0值吧,你直接更新不了的.看看你UPDATE执行的结果值!!!

80,360

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧