目录
1.创建表
2.查看表
3.修改表
对于表的重命名
更改某一列的属性
直接删除某一列
修改某一列的名称:
增加某一列
4.删除表
1.创建表
按照上次的那个创建表的操作,我们创建完成之后首先就是去把这个use一下,即进入到这个表里面去;
然后我们就可以进行下面的创建表的操作;
上面这个就是进行创建表的指令:
- 首先还是使用这个mysql -uroot -p进入到这个mysql里面,可以使用这个免密码的进入;
- create就是在创建表。if not exists表示如果不存在,user1就是为这个表起一个名字;
- name是这个表里面的一项数据集,varchar是这个name的类型,后面会介绍到,20就是这个的大小,comment表示的这个varchar的具体的说明;
- date表示的就是日期型的数据,不需要指定这个数据的大小;
- 这个表的最后一项就是密码,因此这个后面不要有逗号,其他的都要有,表里面的最后一项不需要有;
- 注意这个前半部分的括号和右半部分的括号,这个位置和对应的关系要搞对;
- charset表示的就是编码关系,collate表示的是校验集的编码,engine表示的就是引擎的类型,有很多,不同的类型创建的这个文件数量是不一样的;
我们如何切换窗口进行查看:
就是达到上面的效果:左边的是数据库层面的操作,右边的是这个对应的文件层面的查看,我们就可以来回的切换,验证我们的创建删除之类的操作是否成功,有助于我们理解;
其实想要实现这个效果很简单,就是复制会话,这个复制完成之后的可以放在任意位置,我的是左右放置的,还可以上下放置,这个通过不断的拖动是可以实现的,读者可以下去自信的尝试;
想要进行这个查看,我们需要切换到像下面的这样的root账户下面,否则这个系统就会提醒我们,说我们没有这个对应的权限,切换完成之后,使用ls /var/lib/mysql指令,这个里面就是我们的这个对应的库里面的表结构,我们所在的表就在这个打印结果里面;
因为我是在这个d3数据库的下面创建的表,因此我可以使用这个cd指令进入到对应的表的目录下面去,使用ls查看到了opt文件,我们使用cat发现这个表的编码方式和校验集的编码;实际上这个是已经确定的,当我们创建库的时候,已经确定了这个库的编码方式,这个时候在这个库里面创建的表就是对应的编码方式,实际上我们的代码里面不需要说明,这个也是默认使用库的,但是写上去也没有什么影响;
当我们的表创建完成之后,这个就可以使用ll指令进行查看对应文件,我们发现这个里面有两个user文件,这个user1就是我们的表的名字,因此这两个文件就是创建表生成的,这个就是因为我们的这个InnoDB引擎对应的文件就是2个,如果我们使用的其他的引擎,这个对应的文件的数量也是不一样的;
2.查看表
我们可以先使用下面的select指令查看当前的数据库,我们是在那个库的下面,然后我们就可以查看这个库里面的表;
show tables表示显示这个库里面的所有的表,因为我只是创建了一个表user1,因此这个就只会显示user1表;
desc可以查看这个表的相关的属性,例如这个字段的名字,字段的类型,是否为空,默认值以及这个扩充的情况,后面我们都会学到;
其实这个数据库的所有信息都可以显示出来,包括我们创建这个数据库的操作,我们可以使用下面的show create table user1(这个是表的名字,依据实际情况命名即可);这个时候显示的结果就是我们的创建表的时候写的代码,这个看上去比较乱,我们可以在后面加上这个\G选项对于这个无用的信息进行过滤;
加上这个\G选项之后,这个打印的信息就比较美观,但是这个好像和我们写的有所区别,例如这个最后一行,我们原本写的是这个字符集和校验集的编码,这个就变了一些,这个主要是因为我们的这个书写方式不是很标准,这个是经过标准化修改之后的结果,因此可能会有所区别;
3.修改表
首先我们的这个表创建完成了,可以向这个表里面插入数据了,这个时候我们就需要插入一些相关的数据,然后对于这个数据进行操作,因为这个操作我已经做完了,因此这个只剩下了两列(我把之前的这个id和用户的密码删除了,就不复原了);
对于表的重命名
(这个user1就是之前的名字,user就是我们的表的新的名字)
更改某一列的属性
我们这个就是把这个name1这一列的大小变大一些,使用的是modify命令;
直接删除某一列
使用drop指令,后面加上要删除的这一列的名字;
修改某一列的名称:
我们使用的就是change命令,这个后面需要添加新的属性,这个新的属性可以喝原来的一样,也可以进行修改属性;
增加某一列
我们需要使用这个add并且指出来这个新的一列添加的位置和对应的这个属性大小,以及这个comment描述性信息;
4.删除表
直接使用drop删除表即可,加上这个表的名字;