数据库博文汇总
本篇博客旨在更详细简洁的介绍MYSQl中表格的相关基本操作,包括创建表格、查看表格、修改表格和删除表格。
首先我们创建一个数据库,推荐先在记事本上面写,然后粘贴到MySQL命令行里面。
mysql> create database s_book;
创建表
我们使用这个数据库,在这个数据库里面创建一个表格s_booktype,这个表格我们的需求是这样:
包括 id (书的编号)、price (书的价格)、pubdate (书的出版日期)、author (书的作者),
字段类型分别是 int、decimal(6,2)、date、 varchar(10):
mysql> use s_book;
Database changed
mysql> create table s_booktype(
-> id int,
-> price decimal(6,2),
-> pubdate date,
-> author varchar(10)
-> );
Query OK, 0 rows affected (0.02 sec)
查看表
- 创建完成后可以查看表格基本结构(语法:DESC tablename):
mysql> DESC s_booktype;
+---------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| price | decimal(6,2) | YES | | NULL | |
| pubdate | date | YES | | NULL | |
| author | varchar(10) | YES | | NULL | |
+---------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
- 还以查看表详细结构 (语法:SHOW CREATE TABLE tablename):
mysql> SHOW CREATE TABLE s_booktype;
+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| s_booktype | CREATE TABLE `s_booktype` (
`id` int(11) DEFAULT NULL,
`price` decimal(6,2) DEFAULT NULL,
`pubdate` date DEFAULT NULL,
`author` varchar(10) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
修改表
- 修改表名 (语法:ALTER TABLE 旧表名 RENMAE 新表名 ),我们将表格 s_booktype 改成 s_BookType :
mysql> alter table s_booktype rename s_BookType;
Query OK, 0 rows affected (0.01 sec)
mysql> desc s_BookType;
+---------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| price | decimal(6,2) | YES | | NULL | |
| pubdate | date | YES | | NULL | |
| author | varchar(10) | YES | | NULL | |
+---------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
- 修改字段 (语法:ALTER TABLE 表名 CHANGE 旧属性名 新属性名 新数据类型 ), 我们将id 改成idnumber, 类型改为varchar(10):
mysql> alter table s_BookType change id idnumber varchar(10);
Query OK, 0 rows affected (0.03 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc s_BookType;
+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| idnumber | varchar(10) | YES | | NULL | |
| price | decimal(6,2) | YES | | NULL | |
| pubdate | date | YES | | NULL | |
| author | varchar(10) | YES | | NULL | |
+----------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
- 修改字段属性 (语法:ALTER TABLE 表名 MODIFY 属性名 新数据类型 ), 我们idnumber 数据类型改为int:
mysql> alter table s_BookType modify idnumber int;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc s_BookType;
+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| idnumber | int(11) | YES | | NULL | |
| price | decimal(6,2) | YES | | NULL | |
| pubdate | date | YES | | NULL | |
| author | varchar(10) | YES | | NULL | |
+----------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
- 增加字段 (语法:ALTER TABLE 表名 ADD 属性名1 数据类型 [完整性约束条件] [FIRST | AFTER 属性名2] ),我们在第一行创建一个 idnumber1 ( int ) , 在 author后面增加一个 author2( varchar(10 ):
mysql> alter table s_BookType add idnumber2 int first;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> alter table s_BookType add author2 varchar(10) after author;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc s_BookType;
+-----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+--------------+------+-----+---------+-------+
| idnumber2 | int(11) | YES | | NULL | |
| idnumber | varchar(10) | YES | | NULL | |
| price | decimal(6,2) | YES | | NULL | |
| pubdate | date | YES | | NULL | |
| author | varchar(10) | YES | | NULL | |
| author2 | varchar(10) | YES | | NULL | |
+-----------+--------------+------+-----+---------+-------+
6 rows in set (0.00 sec)
删除表
- 删除字段(语法:ALTER TABLE 表名 DROP 属性名 ),这里我们删除之前添加的 idnumber1 和author:
mysql> alter table s_BookType drop idnumber2;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> alter table s_BookType drop author2;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc s_BookType;
+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| idnumber | varchar(10) | YES | | NULL | |
| price | decimal(6,2) | YES | | NULL | |
| pubdate | date | YES | | NULL | |
| author | varchar(10) | YES | | NULL | |
+----------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
太low有没有?实际开发操作中还是要借助可视化工具的,这里我们使用SQLyog(下载地址:https://download.csdn.net/download/w_weiying/10442996)。
下面介绍SQLlog的相关表格操作,很简便快捷
:
直接打开SQLlog.exe,然后输入mysql密码连接:
进入界面:
左上角就可以看到5个数据库,其中s_book就是我们上面新建的数据库,我们打开s_book就可以看到我们建的表格s_BookType:
选择s_booktype, 鼠标右键——更多表操作——直接修改表名称、删除表;
扫描二维码关注公众号,回复:
1886600 查看本文章
选择s_booktype, 鼠标右键——更改表——就可以直接修改表内字段、添加、删除:
最后,可能有人会问:前面的表名称是s_BookType, 怎么在SQLyog中是 s_booktype, 其实这两个是相同的,如下所示:
mysql> desc s_booktype;
+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| idnumber | int(11) | YES | | NULL | |
| price | decimal(6,2) | YES | | NULL | |
| pubdate | date | YES | | NULL | |
| author | varchar(10) | YES | | NULL | |
+----------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
mysql> desc s_BookType;
+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| idnumber | int(11) | YES | | NULL | |
| price | decimal(6,2) | YES | | NULL | |
| pubdate | date | YES | | NULL | |
| author | varchar(10) | YES | | NULL | |
+----------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
本人其他博文对于pandas中的部分基础函数也做了详细的介绍,如下:
Python数据分析博文汇总
- Pandas重复值处理函数drop_duplicates()
- Pandas数据库缺失值处理函数dropna
- Pandas中slice函数字段抽取
- python数据分析-DataFrame数据框基本知识
- Pandas数据库数据抽取
- Numpy.random.randint()函数用法及源码
- Pandas.concat()函数用法及源码
- Pandas数据框列合并详解
- Pandas.merge()函数用法及源码
- Pandas之数据框框运算
- Pandas之数据标准化
- Pandas.cut函数用法及源码
- python数据框空格值处理
- Pandas.split()函数用法及源码