Android sqlite设置主键自增长的方法教程

 更新时间:2017年06月20日 10:20:04   作者:实习小编嘿  
这篇文章主要给大家介绍了关于Android sqlite设置主键自增长的方法教程,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来学习学习吧。

今天在APP中增加一个添加项目的功能,项目的主键为整数,要让它自增长。

既然要自增长,那么在代码里面就不用给id字段赋值。但是调试的时候发现不行,提示主键重复,观察了输出,不赋值的话,id默认为0,于是每次都为0,就重复了:

Source source = new Source(); 
source.setName(dict.getName());//id没有赋值 
SourceManager.get(this).insert(source); 
ContentValues cv = new ContentValues(); 
System.out.println("id: " + source.getId());//输出,id每次都是0 
cv.put(COLUMN_ID, source.getId()); 
cv.put(COLUMN_NAME, source.getName()); 

id没有赋值,为什么是0呢?那就是Java的默认int为0了,所以,在对象层面,就算不赋值,id也默认是0。

因此,要从数据库操作层面来解决:

//cv.put(COLUMN_ID, source.getId()); 
v.put(COLUMN_NAME, source.getName()); 

ContentValue赋值时取消对id字段的赋值即可。

问题解决,可以自增长了。

总结

Android中,让sqlite主键自增长的条件如下:

   

      1. 数据库中,设置字段为INTEGER,Primary,Autoincrement。

      2. Java代码中,ContentValue赋值时忽略主键字段。

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • android聊天界面键盘、表情切换丝滑实现的具体思路

    android聊天界面键盘、表情切换丝滑实现的具体思路

    这篇文章主要给大家介绍了关于android聊天界面键盘、表情切换丝滑实现的具体思路,具体实现包括在XML布局中使用FrameLayout和RecyclerView,并在代码中进行相应的高度控制和事件处理,需要的朋友可以参考下
    2024-12-12
  • 移动端开发之Jetpack Hilt技术实现解耦

    移动端开发之Jetpack Hilt技术实现解耦

    Hilt的出现解决前两点问题,因为Hilt是Dagger针对Android平台的场景化框架,比如Dagger需要我们手动声明注入的地方,而Android声明的地方不都在onCreate()吗,所以Hilt就帮我们做了,除此之外还做了很多事情
    2023-02-02
  • android自定义圆形倒计时显示控件

    android自定义圆形倒计时显示控件

    这篇文章主要为大家详细介绍了android自定义圆形倒计时显示控件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • Android仿ios加载loading菊花图效果

    Android仿ios加载loading菊花图效果

    这篇文章主要介绍了Android仿ios加载loading菊花图效果,本文通过实例代码效果图展示给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • ViewPager滑动灵敏度调整的方法实力

    ViewPager滑动灵敏度调整的方法实力

    这篇文章主要介绍了ViewPager滑动灵敏度调整的方法实力,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • android之BroadcastReceiver应用详解

    android之BroadcastReceiver应用详解

    这篇文章主要介绍了android之BroadcastReceiver应用详解,BroadcastReceiver也就是“广播接收者”的意思,顾名思义,它就是用来接收来自系统和应用中的广播。有兴趣的可以了解一下。
    2016-12-12
  • Android 实现双击退出的功能

    Android 实现双击退出的功能

    本文主要介绍Android 实现双击退出,这里给大家提供代码示例,方便大家理解查看,有需要的小伙伴可以参考下
    2016-07-07
  • Android SQLite数据库中的表详解

    Android SQLite数据库中的表详解

    这篇文章主要介绍了Android SQLite数据库中的表详解的相关资料,这里附有实例代码,需要的朋友可以参考下
    2017-01-01
  • Android实现长图展开与收起效果

    Android实现长图展开与收起效果

    这篇文章主要为大家详细介绍了Android实现长图展开与收起效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • 务必掌握的Android十六进制状态管理最佳实践

    务必掌握的Android十六进制状态管理最佳实践

    这篇文章主要为大家介绍了务必掌握的Android十六进制状态管理最佳实践,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09

最新评论