书接上文,完成了库的操作,进一步往下走,看看库中的表。
选择数据库:use 数据库名字 (就是操作对象变成了这个名字的数据库,之后的操作就是在这个数据库上进行的)
查看数据库中的表:show tables;(图中展示的是text库中的所有的表,是空表)
mysql> use text;#首先切换对象,是在text这个数据库中进行操作
Database changed
mysql> show tables;#在这个text的数据库中有很多表,但是什么都没有加所以为empty
Empty set (0.00 sec)
数据库中空空的,要建表:create table 表名(
列名1 类型,
列名2 类型,
…,
…【注意最后一列不要添加逗号,会以为你后面还有列没写完,会报错】
);
mysql> create table class(
-> id int,
-> name char(10),
-> adress varchar(15),
-> pay decimal(4,2)#这个类型是小数,代表一共有四位,其中小数为两位,别以为是整数四位,小数两位,我就出错了,呜呜呜~~
-> );
Query OK, 0 rows affected (0.75 sec)
mysql> show tables;#用show tables查看表
+----------------+
| Tables_in_text |
+----------------+
| class |
+----------------+
1 row in set (0.00 sec)
这样一个class的表就建好了,其实在类型后面可以限制一下,但是这么写会报错,思想没错,在后面中,id应为自增列,但是却为NULL,就是因为没有写范围。
补充:关于varchar和char的差别:二者在磁盘上存储占的空间是一样的。区别有二。第一、一个变长一个固定长度。第二、在内存中的操作方式,varchar也是按照最长的方式在内存中进行操作的。比如说要进行排序的时候,varcahr(100)是按照100这个长度来进行的。
[https://www.cnblogs.com/zhuyeshen/p/11642211.html](链接更加详细)
在表中添加元:insert into 表名
(列名1,列表2…)【可以省略,但是下面的元素都要,一一对应】
Value
(####,#####,…);
mysql> insert into class
-> (id,name,adress,pay)
-> values
-> (1,'张三','红旗街',388.56);
还可以选择特定的表来填写信息:这个只是添加了adress这个列的信息。
mysql> insert into class
-> (adress)
-> values
-> ('Hongqi');
添加进去了,要查看啊,所以就有查看表内元素。
读取表:select * from class;
mysql> select * from class
-> ;
+------+------+--------+------+
| id | name | adress | pay |
+------+------+--------+------+
| NULL | NULL | Hongqi | NULL |
+------+------+--------+------+
看我的里面四个列里面有三个NULL,尽量避免出现这种情况,容易引起不兼容。可以在建表时,在类型后面添加限制条件,还是要看不同的mysql版本说明。呜呜呜,大伙自己找找,我反正没找到,我去问问老师再说一下~~
快速删除表中的元素:truncate 表名;
mysql> select * from class;
+------+------+--------+-------+
| id | name | adress | pay |
+------+------+--------+-------+
| NULL | NULL | Hongqi | NULL |
| NULL | NULL | NULL | 20.18 |
+------+------+--------+-------+
2 rows in set (0.00 sec)
mysql> truncate class;
Query OK, 0 rows affected (0.80 sec)
mysql> select *from class;
Empty set (0.00 sec)#就这样把class这个表内元素给删除了
Truncate:表示将表删除,再重建一个新的表(不想要这个纸,直接换一张纸)
Delect:删除表中的元素(用橡皮慢慢擦,可能会留有痕迹)【可能会有自增列,举个例子,比如你把类型后限制变为自增列,我往表里面添加元,我不选定那个列,他也不会为NULL,会自动加一,就是比如,班级表内的排名会1,2,3…一直慢慢自己增加,所以用delect会有】