首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Mybatis使用generatedKey在插入数据时返回自增id始终为1,自增id实际返回到原对象当中的问题排查

    今天在使用数据库的时候,遇到一个场景,即在插入数据完成后需要返回此数据对应的自增主键id,但是在使用Mybatis中的generatedKey且确认各项配置均正确无误的情况下,每次插入成功后,返回的都是...终于凭借着一次Debugg发现的问题,原来在使用Mabatis中的insert或者insertSelective方式插入时,如使用int insert(TestGenKey testGenKey)时,返回值...int表示的是插入操作受影响的行数,而不是指的自增长id,那么返回的自增id到底去哪里了呢?...通过下面的Debugg我们知道自增id返回到testGenKey的原对象中去了。 举例示范配置 数据库示例表  generator的配置文件 <?...sex.trim(); } } 测试及Debugg 编写测试方法测试插入 插入成功后观察对应的变量对应的值 总结:调用Insert后插入操作之后,所得到自增长Id被赋值到原对象当中,而不是返回值

    2.4K10

    iOS数据持久化之二——归档与设计可存储化的数据模型基类

    试想,如果我们可以将用户的登录返回信息模型,游戏中角色的属性信息模型进行直接的持久化存取,那是不是非常爽的事,幸运的是,我们可以通过归档,来设计一个这样的数据模型。...其存储与读取的过程,主要封装在两个类中:NSKeyedArchiver和NSKeyedUnarchiver。...init];          unsigned int * count = malloc(sizeof(unsigned int));     //调用runtime的方法     //Ivar:方法返回的对象内容对象...,这里将返回一个Ivar类型的指针     //class_copyIvarList方法可以捕获到类的所有变量,将变量的数量存在一个unsigned int的指针中     Ivar * mem = class_copyIvarList...NSUTF8StringEncoding];         [array addObject:str];     }     //释放内存     free(count);     //注意处理野指针     count=nil

    1.2K30

    【IOS开发基础系列】数据持久化专题

    NSKeyedUnarchiver *archiver = [[NSKeyedUnarchiver alloc] initForReadingWithData: theData]; //使用与归档编码使用相同的键对象进行解码...该函数sqlite3_open返回SQLITE_OK打开成功。     sqlite3_exec(db, [tablesql UTF8String], NULL, NULL,&err) !...= SQLITE_OK         sqlite3_exec是执行任何不带返回值sql语句,第2个参数是要执行的sql语句,第3个参数是要回调函数,第4个参数是要回调函数的参数,第5个参数是执行出错的字符串...;         sqlite3_close(db);     } }     sqlite3_prepare_v2(db, [sqlStr UTF8String], -1,&statement, nil...];     [self setStudentName: nil];     [self setStudentClass: nil];     [super viewDidUnload]; } - (void

    54120
    领券