00:00
呃,修改表结构这里边儿有三个操作,这三个操作分别是添加列,删除列,修改列。一个个来。看添加列表是什么意思呢?就是说我这张表来看啊,直接看案例哈。呃,我之前见的叫表一对吧,里边的列呢叫name age,性别和电话。假设呢,现在我这里边想给它加一列。再给他加一列,加什么列呢?就写一个存款。对吧,我想把这个列加到这儿。怎么办?怎么办呢?其实有两种方案,第一种方案最省事,怎么省事呢?把表删了,重新建一个。直白是吧,简,简单粗暴是吧。啊,第二种方案呢,就是说在这张表的基础之上,进行只添加这个一个列的操作,好吧,添加这一个列的操作,咱们可以这么去写代码,你看写啊。
01:05
呃,先写中文。呃,对表表一添加。一个列。这个列叫做存款,咱就是money吧。整这么洋气干嘛钱?是吧,我要加这个前这个列好吧,怎么加呢?看好了语句啊,看好语句这个单词,记住这个什么意思。这个东西叫修改。修改。修改表什么表啊,是不是得写表名啊,你看我写的啊。修改。Table表名什么表来着,刚才见那个。叫表一对吧,添加我添加啥。前这个列,然后前这个列的数据类型是什么呀。
02:02
Number。Number。多少位呢?四位四位就够你够你挣的吗。有点出息是吧。五位够了是吧。哎,这里边你想写几写写几啊,我就写个五好吧。就随便的啊好了,那这个语句呢,咱们写完了,然后选中它记住了啊,选中它。执行。诶执行完了这块呢,就显示了是表是不是被修改了。好来来上这边来刷新一下这张表,刷新一下。这个这个这个这个小箭头。这个东西就是这个刷新哈。OK,我点了一下刚才哈,然后现在是不是出现那个列了。出来了吧,钱是吧。哎,这个就是添加一列。这样选中它一执行就给它添加上了,好这个语句没什么问题吧。
03:04
这是添加啊,好,再往后看下一个语句干嘛呢?哎呀,刚才这个钱啊。这个位数呢,假设我刚才写的几来着,写五了是吧,我觉得太少了。我给它改成八。改是改不了了,咋办呢?我只能给它删掉再添加。删掉是吧,我就把刚才那个前那个列呀,我要给他删了。怎么删呢,这么删。看啊。Out table表一删除drop。列列这个单词叫column c。COLUMN。然后什么列呀,前这个列。删除前这个列。好,来一直行。这边写着修改成功,到这边来点一下这个刷新。
04:03
点一下来。诶。是不是前这个列就没了。前这个列就没有了。精算刚才咱们白玩啊,添加了一个,又把它删了。我看。把这个写上。呃,这个叫删除。删除表一中。的列。钱。这个列。对吧。哎,这是啊,这个代码呢,现在没有被保存哈,我CTRLS一下保存在桌面,我这个文件文件名叫啥嘞。瞎搞TEST1啊。保存一下。呃,这样的话,咱们桌面代码就保存下来了。好,咱们先看下一个操作。
05:00
下一个操作呢,叫修改列名,或者说修改表名,咱们先说这个表名哈。大家看我这个PPT中,案例中一直用这个表,是不是叫person啊,人物是吧,人啊,而咱们这个里边这个表叫什么呀?是不是叫表一啊?OK,我现在要把表一的表名改掉。别叫表一了,这什么呀,这是对吧,换个单词。怎么办呢?咱们语句就是这样的,下面这个是修改表名啊。这是后边这个好吧。来修改。修改。表。表一,表一。然后rename rename就叫重命名。重命名。重命名成。人。对吧。哎,他这个person,咱就叫人这张表。
06:00
快了,快了,别了。好不容易会个单词给用上是吧,哎,把这个句话一直行,注意执行。好了,来到这边刷新一下。诶,没了呢。因为改名了是吧,你现在说刷新的是表一啊,那肯定没有了。来刷新一下哈。这边诶哪去了。是不是这个就是啊。Name is、性别和电话。哎,表表名是不是改掉了,改掉了。OK,这就是咱们的修改表名那个。接下来呢,就是咱们修改列名。列名你看这个单,你这个读一遍你就知道啥意思了。修改表person。重命名,重命名什么呀,这是。重命名列哪个列,Name列,把它改成。
07:01
姓名。对吧,好的来写一下。呃,咱改哪个列啊,咱就把这个name改成姓名呗,跟他一样,或者说改这个吧,Gender性别,咱们常用的性别是不是用sex啊,把它改为sex哈。好,A letter al啊,Table不是表一了,叫什么来着?Personname。重命名?我要重命名的什么东西?Call列列的原先的名叫做ger。然后我要给它改成什么。Sex。找你。来这边瞅一眼刷新。是不是三出来了?OK,这样的话呢,咱们这几个语句就写完了,我把每一个语句都写个注释啊。这个语序干嘛来着?
08:03
修改。表明。表明为person对吧。这个语句呢?将person。将。Person。表中的列。修改成。Thanks。是吧?应该是表中的gender。是吧,这个列哈。好,这就是咱们的这几个语句。这几个语句。其实在咱们这个SQL编程中啊,数据库编程里边这句话你平白无故的写在这儿,其实没什么问题,我只要不选中它,执行它就不会报错哈。哎,真正的代码是不是在这儿呢?我执行的就是这个代码,那有的人说我不行,写Java写习惯了。
09:06
写上这样的注释啊,我最好写上那个。杠杠或者说杠星星杠是吧。嗯。在数据库中的注释是这个。简姐。看到了吧,是不是变绿了,哎,咱都给它写上减减。再见。这个是注释啊注释。好吧。好,这样的话呢,我就把刚才的这几个操作呢,都给大家演示了一遍。演示了一遍。哪句哪句有问题不?没有是吧,好,没有的话,咱们简单的做一个小结哈。修改表结构的流程。首先这个你先甭读,直接蹦到红色这块。它是非常消耗系统性能的。
10:01
就是这个操作基本上不会使用到。不会使用到。为什么呢?来看这个过程啊。他修改表结构,好,咱们这样看,就刚才我那个person表。假设这个破损表啊,咱们已经系统用用了两年了。那这个person表里边儿的数据,咱也不多说,8万条。不多,对于数据库来说,8万不多,好吧,8万条,那我想把这个里边的其中就刚才做那个什么操作,我想把里边的性别换个名。你看它会怎么执行的,首先它会将表格中的数据备份。什么叫备份?是不是就是CCTRLCCTRLV啊。他会把这8万份复制出来。成为另一个8万份。你就不用不用往后看,就这个备份这个过程是不是就产生了双倍的系统消耗啊。
11:06
对吧,好,那再再往后看,然后呢,他会把表中数据清空,也就是说把原先的这8万条。干了干掉了。这个表里边儿是不是成空表了,空表之后它才会进行修改。OK,才会把那个性别改个名。然后呢,再将备份的数据依次插入,也就是说备份不在这儿吗?改完了吧,我会把这8万条一条插回来,一条回来,一条回来,也就是说一条一条往回搞。很累是吧,很累,所以这三步一完成,那么虽然说咱不累哈,但是系统会消耗很多,消耗很多。或者说这个过程中你的系统会进行会变的很卡是吧,很卡。
12:04
其实有的时候咱们玩游戏也好啊,就是逛淘宝也好啊,突然之间系统卡一下,那说不定他这个服务器里边干点什么事呢。那就是被消耗了性能,OK,所以咱们做一个简单的总结。其实更多的时候,我们应该尽量的避免表格被重构,什么叫重构呢?就是重新的构造。重新的构造,比如说修改表就叫重构了。在设计表的时候,我们应该尽量让表格中的字段完善。对吧,就是说我这张表A表里边儿就是123这三个列,咱们在设计阶段就应该把这三列做的尽善尽美。基本上以后就不变了,就这三列滚了。这个时候可以哈。如果你没有这样的信心说,哎呀,难保不成,两年之后我可能会来个第四列,五年之后可能来个第五列。
13:06
如果你有,如果你保不齐会这样的话,咱们怎么办?你可以先设置保留字段,保留字段。哎,留待以后添加新的业务。啥意思呢,这个保留字段,这个意思就是这样。比如说我就瞎创建一张表哈。咱还是标一好吧。比如说这里边儿有A。这个number类型。Number有B列number。有C列number。对吧,这个表呢,我在现在我感觉这张表我在设计阶段啊,三个列啊,完全没问题。但是呢,我还是保不齐,以后可能会添加别的脸。咋办呢?咱们可以加D列。
14:02
使用叉R类型。加地。也再来。一点。哎,这么去建这个表,只不过这张表建出来之后啊。你用的时候,你只用这仨就好了,这两个链你暂时可以给它空下来。可以给他做空。哎,可以给他空,啥意思呢,就类似于这个,咱买房子肯定要买两室一厅,为啥呢。你说你现在不要孩子,难保五年之后你不要孩子,对吧?那个屋暂时空着就空着呗,以后有了孩子是不是就用用到了。就是这个意思。这块呢,你暂时用不到空着就空着,但是呢,位置我得先占下来。对吧,哎,可以后能用到咱就用,用不到空着呗,我当仓库还不行吗。哎,OK,明白这啥意思了吧,就是你搞这么两列出来是吧,搞这么两列暂时放在放在这,而且这两列注意了啊。
15:09
你也不知道以后这两个列能用作干什么,所以我用了我差二类型,为啥嘞?因为我差二是万能类型。就像Java中的字符串是万能类型啊,哎,纯int,纯double,纯布尔都行,咱们也是这样OK吧。就是这个意思啊。啊,就是这意思啊,那这段咱们这个修改表结构这段晚自习的时候,把这个PPT这块再好好看,琢磨琢磨哈,嗯。好,接下来呢,咱们创建这个表表留保留字段123。保留字段123跟我刚才参考我刚才代码啊。好,把这个动手做一下。
我来说两句