MySQL管理数据库、数据表、数据的基本操作是什么
本篇内容主要讲解“MySQL管理数据库、数据表、数据的基本操作是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL管理数据库、数据表、数据的基本操作是什么”吧!
注意:MySQL数据库命令不区分大小写,但在Mac端如果想使用tab键自动补全命令,就必须使用大写。
1、数据库管理
1.1 create 创建数据库
mysql>createdatabasetest;QueryOK,1rowaffected(0.50sec)
1.2 show 查看所有数据库
mysql>showdatabases;+--------------------+|Database|+--------------------+|information_schema||mysql||performance_schema||sys||test|+--------------------+5rowsinset(0.32sec)
1.3 alter 修改数据库
alter命令修改数据库编码:
一般我们设置的字符集使用的都是UTF8,若发现数据库编码不是UTF8,可使用该语句更改数据库编码:
mysql>alterdatabasetestcharactersetutf8;QueryOK,1rowaffected(0.01sec)
1.4 use 使用数据库
mysql>usetest;Databasechanged
1.5 查看当前使用的数据库
mysql>selectdatabase();+------------+|database()|+------------+|test|+------------+1rowinset(0.00sec)
1.6 drop 删除数据库
mysql>dropdatabasetest;QueryOK,0rowsaffected(0.00sec)
2、数据库表管理
我们先创建一个数据库,以供我们后面使用:
mysql>createdatabasetest;QueryOK,1rowaffected(0.06sec)
创建后,使用use命令进入数据库:
mysql>usetest;Databasechanged
2.1 create 创建表
mysql>createtabletest(idintauto_incrementprimarykey,->namevarchar(20)notnull,->ageintnotnull,->birthdaydatetime);QueryOK,0rowsaffected(0.14sec)
2.2 show 显示表
mysql>showtables;+----------------+|Tables_in_test|+----------------+|test|+----------------+1rowinset(0.00sec)
2.3 desc 查看表结构
mysql>desctest;+----------+-------------+------+-----+---------+----------------+|Field|Type|Null|Key|Default|Extra|+----------+-------------+------+-----+---------+----------------+|id|int(11)|NO|PRI|NULL|auto_increment||name|varchar(20)|NO||NULL|||age|int(11)|NO||NULL|||birthday|datetime|YES||NULL||+----------+-------------+------+-----+---------+----------------+4rowsinset(0.01sec)
2.4 alter 修改表结构(增、删、改)
2.4.1 add 在表中添加字段(列)
mysql>altertabletestaddstarbool;QueryOK,0rowsaffected(0.02sec)Records:0Duplicates:0Warnings:0
注意:在MySQL中布尔类型会自动转变为tinyint(1)类型
用desc查看可得到:
mysql>desctest;+----------+-------------+------+-----+---------+----------------+|Field|Type|Null|Key|Default|Extra|+----------+-------------+------+-----+---------+----------------+|id|int(11)|NO|PRI|NULL|auto_increment||name|varchar(20)|NO||NULL|||age|int(11)|NO||NULL|||birthday|datetime|YES||NULL|||star|tinyint(1)|YES||NULL||+----------+-------------+------+-----+---------+----------------+5rowsinset(0.00sec)
2.4.2 modify 修改表字段(列)
mysql>altertabletestmodifystarint;QueryOK,0rowsaffected(0.43sec)Records:0Duplicates:0Warnings:0
注意:int可以指定长度,也可以不指定,不指定时默认长度为int(11),修改后再次用desc查看:
mysql>desctest;+----------+-------------+------+-----+---------+----------------+|Field|Type|Null|Key|Default|Extra|+----------+-------------+------+-----+---------+----------------+|id|int(11)|NO|PRI|NULL|auto_increment||name|varchar(20)|NO||NULL|||age|int(11)|NO||NULL|||birthday|datetime|YES||NULL|||star|int(11)|YES||NULL||+----------+-------------+------+-----+---------+----------------+5rowsinset(0.00sec)
2.4.3 drop 删除表字段(列)
mysql>altertabletestdropcolumnstar;QueryOK,0rowsaffected(0.00sec)Records:0Duplicates:0Warnings:0
查看表结构可以看到没有star字段了:
mysql>desctest;+----------+-------------+------+-----+---------+----------------+|Field|Type|Null|Key|Default|Extra|+----------+-------------+------+-----+---------+----------------+|id|int(11)|NO|PRI|NULL|auto_increment||name|varchar(20)|NO||NULL|||age|int(11)|NO||NULL|||birthday|datetime|YES||NULL||+----------+-------------+------+-----+---------+----------------+4rowsinset(0.00sec)
2.4.4 rename 重命名表名
mysql>renametabletesttopeople;QueryOK,0rowsaffected(0.01sec)
再次查看表格,发现表名已改变:
mysql>showtables;+----------------+|Tables_in_test|+----------------+|people|+----------------+1rowinset(0.00sec)
2.5 create 利用已有数据创建新表
mysql>createtablenewpeopleselect*frompeople;QueryOK,0rowsaffected(0.04sec)Records:0Duplicates:0Warnings:0
查看数据库存在的表发现已经有了:
mysql>showtables;+----------------+|Tables_in_test|+----------------+|newpeople||people|+----------------+2rowsinset(0.00sec)
3、数据的操作及管理
3.1 增加数据(增)
mysql>insertintopeoplevalues(null,'Anny',22,'1990-09-09');QueryOK,1rowaffected(0.00sec)
用select查询:
mysql>select*frompeople;+----+------+-----+---------------------+|id|name|age|birthday|+----+------+-----+---------------------+|1|Anny|22|1990-09-0900:00:00|+----+------+-----+---------------------+1rowinset(0.00sec)
3.2 删除数据(删)
mysql>deletefrompeoplewherename='Anny';QueryOK,1rowaffected(0.00sec)
再用select查询,发现没有删除的数据了:
mysql>select*frompeople;+----+------+-----+---------------------+|id|name|age|birthday|+----+------+-----+---------------------+|2|Lisa|20|1992-09-0900:00:00|+----+------+-----+---------------------+1rowinset(0.00sec)
3.3 修改数据(改)
mysql>updatepeoplesetname='Anny'wherename='Lisa';QueryOK,1rowaffected(0.00sec)Rowsmatched:1Changed:1Warnings:0
再查数据可以看到Lisa名字变为anny了:
mysql>select*frompeople;+----+------+-----+---------------------+|id|name|age|birthday|+----+------+-----+---------------------+|2|Anny|20|1992-09-0900:00:00|+----+------+-----+---------------------+1rowinset(0.00sec)
3.4 查询数据(查)
最简单的就是下面的语句:
mysql>select*frompeople;+----+------+-----+---------------------+|id|name|age|birthday|+----+------+-----+---------------------+|2|Anny|20|1992-09-0900:00:00|+----+------+-----+---------------------+1rowinset(0.00sec)
* 表示所有字段,也可以指定字段查询,如下:
mysql>selectnamefrompeople;+------+|name|+------+|Anny|+------+1rowinset(0.00sec)
4、管理视图
4.1 创建视图
mysql>createviewpeople_view(name,age)asselectname,agefrompeople;QueryOK,0rowsaffected(0.00sec)
创建成功后可以查看视图:
mysql>select*frompeople_view;+------+-----+|name|age|+------+-----+|Anny|20|+------+-----+1rowinset(0.00sec)
可以用desc 查看视图字段:
mysql>descpeople_view;+-------+-------------+------+-----+---------+-------+|Field|Type|Null|Key|Default|Extra|+-------+-------------+------+-----+---------+-------+|name|varchar(20)|NO||NULL|||age|int(11)|NO||NULL||+-------+-------------+------+-----+---------+-------+2rowsinset(0.00sec)
4.2 替换视图
创建或替换原有视图:
mysql>createorreplaceviewpeople_view(id,name,age)asselectid,name,agefrompeople;QueryOK,0rowsaffected(0.00sec)
查看现有视图:
mysql>select*frompeople_view;+----+------+-----+|id|name|age|+----+------+-----+|2|Anny|20||3|Lisa|22|+----+------+-----+2rowsinset(0.00sec)
4.3 操作视图
当视图有变化时,对应的表格也会跟着改变,即操作视图就是操作表格,我们在视图中插入一条数据:
mysql>insertintopeople_viewvalues('Lisa',22);QueryOK,1rowaffected(0.08sec)
插入成功后,我们查看视图数据:
mysql>select*frompeople_view;+------+-----+|name|age|+------+-----+|Anny|20||Lisa|22|+------+-----+2rowsinset(0.00sec)
可以看到视图中已经有了,再查看我们表格数据:
mysql>select*frompeople;+----+------+-----+---------------------+|id|name|age|birthday|+----+------+-----+---------------------+|2|Anny|20|1992-09-0900:00:00||3|Lisa|22|NULL|+----+------+-----+---------------------+2rowsinset(0.00sec)
发现也有了对应的数据
4.4 删除视图:
mysql>dropviewpeople_view;QueryOK,0rowsaffected(0.00sec)
到此,相信大家对“MySQL管理数据库、数据表、数据的基本操作是什么”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。