00:00
好,接下来我们最后一个DDL的API呢,是删除表格啊,那这个删除表格呢,相对是比较简单的,我们直接来代码里面进行一个编写,好在这下面呢,我们来写上public static啊,那删除表格呢,我们可以给它加一个布尔类型啊,来判断它呢是否删除成功了,其实前面也都可以啊,你可以写成这种形式啊,相对呢还是比较开放的啊,写一个布尔类型叫delete。嗯,Table啊,Delete table好,在这里面呢,如果你想删除一个表格,只需要给到它命名空间加表名就可以了啊,这是我们的删除表格对吧?好,对应这边呢,我们可以来写一个文档注释。好,文档注册里面这边写上叫删除表格啊,这边呢叫命名空间名称啊,命名空间名称好,下面这个呢,叫表格名称啊,那对应的一个return值呢,表示TE啊,True。表示删除成功对吧,那那false呢,对应就是没有删除成功啊,那没有删除的成功的原因呢,一般就是这个表格不存在吧啊,那我们在写这个delete table的时候呢,索性就直接在最开始的时候呢,第一个就来判断。
01:14
啊,判断表格是否存在啊,就不要放到后面再去编写了,判断表格是否存在,里面还是去写一个if啊,这里呢,写一个is table exists是否存在啊,叫names space。给你写一个table name对吧,好在这个地方呢,如果它是一个感叹号,那就是不存在啊,你这里呢,可以来打印一下啊。叫。表格不存在啊,无法删除,好对应到我们这边return一个boss啊,你没有办法删除成功,那就return一个boss啊在底下,如果他没有走这一步的话,说明这个表格呢是存在的,那我们对应的就可以去删除这个表格啊,写个二叫啊删除表格,那我们要删除表格还是跟前面一样的一个流程啊,首先要获取adin叫connection.getin啊,点Y返回得到一个ain,在接下来呢三啊就是调用相关的方法删除表格啊,叫调用。
02:16
相关的方法。删除表格,好,The mean点它里面会有啊,叫delete table啊delete table里面呢,写一个table name就可以了啊,叫table name.value of。啊,这个table name呢,写错了啊,应该是大写的T开头对吧?它俩名字重了啊好,Table name啊,用它的一个静态类啊,点里面的一个静态方法,填上name space,加这个table name,好,这样的话我们就能够删除掉这个表格了啊最后呢,不要忘了。啊叫四叫啊关闭啊的命。啊叫in点。好,这就是我们一个整个的一个流程了啊,那这个is table exist它里面也是连接的一个异常,对吧,咱们前面已经进行过异常处理了,那我这个地方的异呢?哎,我需要给它拆开启捕获一下,那这些异常那就给它抛出去就可以了,这些都是连接的异常吧,好,这个地方它会有什么异常呢?哎。
03:19
跟咱们在呃向命令行里面使用的时候呢,其实是一样的啊,但可能呢,有的同学呢,他哎不太记得了对吧?好最底下的这个地方呢,它爆红了啊,因为我们在关闭之后啊,忘了啊,你需要return一个处。对吧?哎,需要RETURN1个数啊,不要忘了,好,这是我们整个的一个删除表格的流程啊,那它会报一个什么异常呢?你来试一下你就知道了,这叫delete table,对吧,你在这个地方。啊叫删除啊测试啊,删除表格啊叫delete table里面写上at硅谷student就删除这个表格啊,刚创建出来修改完再给它删除掉啊。
04:01
分号,然后我们来执行,看一下会有什么问题。这个地方啊,其实我们在做C命令行的时候呢,给大家介绍过啊,不知道有同学多少同学还记得啊。他在命令行里面执行的时候呢,跟在代码里面执行底层的逻辑其实是一样的啊,我们可以看到他报了一个异常,因为我们做异常处理了,所以后续的代码还是可以正常执行的,往上翻来看一下,它报了一个什么异常啊,在这边有啊,它叫什么呢?叫table not。Disable,一个section not disable还记得吧,就是我们在删表格的时候,你必须要有一个操作,就是先把这个表格呢,标记为不可用啊,标记为不可用的状态啊,这是一个必须要有的一个操作,好,那对应这边呢,你在删除表格的时候,也是一定要有的啊,一定要有的你在这个地方。
05:05
对吧,你在这个地方啊,咱们来标标记一下啊,来写一下注释叫。啊,删除表格之前啊,一定要先标记啊表格为不可用啊,Disable不可用的意思,怎么标记它不可用呢?就是in点。Disable这么一个表格在里面呢,写上一个相同的东西啊,我们CTRLCCTRV啊,如果你这样写的话呢,可能看起来我们需要table name y of创建两个对象啊,那有一个比较好的方法,你可以怎么办呢?Idea里面有快捷键啊,你点返回接收的时候呢,它会让你选择是当前和O还是两个都替换啊,你两个都替换把它给改成一个table name1就可以放进去了,看到没有,然后呢,这样的话呢,可能看起来呢更好看一点啊好,这样的话就对了啊,我们先disable,然后再选删除表格,不存在的异常,我们已经提前解决掉了啊,再来试一下看能否删除这个表格。
06:09
H base呢,对应表格的这个删除啊,还是比较严谨的对吧?啊,其实它设计这么一道呢,也是为了大家呢,防止去删库跑路啊,还是很危险的啊呢,一般存的是大数据,你想一下海量的数据对吧?TB级别的啊,你一个delete全给干没了啊,那还还是非成怕的啊,还是非成怕的,那这里呢,它给你加了一道啊,就是为了呢,防止你却误删除啊,防止你说删除,所以在实际开发的时候啊,你说这个delete删除表格这个API会不会编写呢?啊,我觉得一般情况下我们不会编写这么一个API啊呃,人家给你设计了一个权限叫disable加delete对吧,结果你设计个API2个都写进去了啊,我们这里呢,只做一个演示,目的呢是把这个表格真的能删除掉,看到没有,他啥也没报啊,这个表格呢,真的被删除掉了,但实际开发的时候呢,我们是不会这样去写,太危险了啊,你你专门写一个API delete table,那有的人小白过来,他就玩这个API,那你不。
07:08
芭比Q了是吧,啊整个数据呢就都没了啊,不要去玩这种东西啊。好,我们可以到这边来看一下啊,叫list。这个表格呢,就真的被我们删除掉了啊,这是删除表格的API的编写。
我来说两句