要操作表首先需要选定数据库,因为表是存在于数据库内的
选择数据库
mysql> use school;
Database changed
选择好数据库之后,我们就可以在此数据库之中创建表了
创建表
mysql> create table student(
-> id int,
-> name varchar(20),
-> sex boolean
-> );
Query OK, 0 rows affected (0.11 sec)
create table用于创建表,后面接表名称
括号内写的是字段名称和类型,逗号隔开,需要说明的是varchar是可变长度的字符串
这里的5行也可以写成一行,之所以这么写是为了清晰度
显示表
复制代码代码如下:
mysql> show tables;
+------------------+
| Tables_in_school |
+------------------+
| student |
+------------------+
row in set (0.00 sec)
show tables可以显示当前数据库中的所有表
查看表基本结构
复制代码代码如下:
mysql> describe student;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
| sex | tinyint(1) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
rows in set (0.00 sec)
这里显示了字段、数据类型、是否为空、主外键、默认值和额外信息
describe还可以简写成desc
其实大部分sql语句都能简写为四个字符的形式
需要注意的是:刚刚写的sex为boolean类型,会自动转换为tinyint类型
查看表详细结构
复制代码代码如下:
mysql> show create table student\G
*************************** 1. row ***************************
Table: student
Create Table: CREATE TABLE `student` (
`id` int(11) DEFAULT NULL,
`name` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
row in set (0.00 sec)
show create table能显示创建表时的详细信息
末尾后的\G是为了显示更美观
tips:在显示比较长的信息时,\G结尾尤其有效
删除表
mysql> drop table student;
Query OK, 0 rows affected (0.02 sec)
删除表的操作和删除数据库的操作差不多
都是使用drop命令,删除完成后便可使用show tables查看余下表