温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
下面咱们来看这个insert selective这个方法,其实我们前面说过的啊,这个带selective表示什么效果呢?就是你为空的字段就不会出现在我们in色的,呃,这个SQL语句里面了,我们下边呢,来验证一下啊,看看是不是我说的这样,呃,其实就还是我们刚才这些操作哈。我们给它稍微调整一下就行,我们在这儿呢,就先不打印这个返回的主键的值了哈,在这呢,我们把这个数据哈,你看已经加到零三了,我们去给它加到零四。哎,再执行这个保存,嗯,当然这时候我们为了区别,那我们这这得给它写上这个是selective selective,你看它是select这个单词的形容词形式就是可选择的,有选择的,哎,那么也就是说呢,它会对我们这些字段哈,去进行这个甄别,去进行这个区分,你要是为闹呢,他就不会出现在SQL语句里边了。
01:04
呃。比如说我们把这这个地方啊,给它设计成,嗯,下面这个方法呢,我们去给它创建出来employee map.insert selective这个。然后呢,我们来执行一下这个操作哈。关键的是看SQL语句。诶,没有跑一场看四国语句。你看这个思口语句哈,这个时候呢,就比刚才刚才那个你词语句呢就简洁一些了,这个我们以salary这个字段呢为now,在SQL语句里边呢,你看就没有了啊,当然了,这个时候可能有同学会会很细心哈,你会发现,诶你这个ID也是闹是吧,但是ID呢在这里边有哈,哎,对这个因为ID哈在这儿呢,它是主键啊,它这个地位不一样,哎,所以我们严格的说呢,就是非主见的这些字段如果为now就不加入到S库语句里边了,这就是在select呢它的这个效果。
02:20
在这儿我们写一下啊,呃,它的这个方法有什么特点呢?非主键字段如果为闹值,则不加入到这个四库语句中,就这么个效果,呃,那你这么做有什么有什么用呢?啊,这个东西其实还是有实际意义的啊,大家想这么一个场景哈,我们现在这个表哈,就这么四个字段,看着确实是不明显,那如果你想象一下啊,如果一个表呢,有30个字段。但是呢,我们第一次插入数据的时候啊,只是其中的三个字段有值,其他的那个20多个字段呢,都没有值,那我把这20多个字段呢,写到这个SQL语句里边哈,没有任何的意义,哎,那如果我能够把这些值为now的字段在SQL语句里边给他们省略掉,这个SQL语句呢,就能够变得很简洁啊,我们调试起来呢,就能够变得更轻松一些啊,所以说这个呃,这个是适合那种字段很多,但是呢,插入的数据库表字段很多,但是真正插入的值很少这样一种这个情况啊,所以这是我们selective啊,就是起这样一个作用的。
我来说两句