7.1 MySQL基本操作
MySQL是一种数据库管理软件,操作该软件可以通过图形用户接口方式,也可使用命令行方式。本节将介绍phpMyAdmin的使用、MySQL的安装及MySQL的基本命令。
7.1.1 phpMyAdmin的使用
phpMyAdmin是一个免费且受欢迎的MySQL数据库管理工具。phpMyAdmin是图形交互客户机,用来简化MySQL服务器管理。本节将介绍如何使用phpMyAdmin管理MySQL数据库。
1.设置数据库用户权限
第1步:安装好WAMP后,单击WAMP图标,弹出如图7-1所示菜单。选取菜单中的phpMyAdmin项,在浏览器中打开如图7-2所示页面。
第2步:在页面中单击“权限”项,在浏览器中打开“权限”页面,如图7-3所示。
第3步:在权限页面中,单击“添加新用户”项,在浏览器中打开添加新用户页面,如图7-4所示。
下面对这些权限进行详细的描述。
1)数据部分
(1)SELECT选项:表示是否允许读取数据。
(2)INSERT选项:表示是否允许插入和替换数据。
(3)UPDATE选项:表示是否允许更改数据。
(4)DELETE选项:表示是否允许删除数据。
(5)FILE选项:表示是否允许从数据中导入数据,以及允许将数据导出至文件。
2)结构部分
(1)CREATE选项:表示是否允许创建新的数据库和表。
(2)ALTER选项:表示是否允许修改现有表的结构。
(3)INDEX选项:表示是否允许创建和删除索引。
(4)DROP选项:表示是否允许删除数据库和表。
(5)CREATE TEMPORARY TABLES选项:表示是否允许创建临时表。
(6)CREATE VIEW选项:表示是否允许创建新的视图。
(7)SHOW VIEW选项:表示是否允许查询视图。
(8)CREATE ROUTINE选项:表示是否允许创建新的存储过程。
(9)ALTER ROUTINE选项:表示是否允许修改存储过程。
(10)EXECUTE选项:表示是否允许执行查询。
第4步:按照要求填写用户信息,勾选相应的权限,最后单击右下角的“执行”按钮,在浏览器中打开成功添加用户后的页面,如图7-5所示。
2.检查和修改数据库
需要检查和修改数据库时,打开phpMyAdmin的首页,左边的侧边栏里显示着服务器上的各个数据库,单击就可以进入,也可以单击“数据库”图标,如图7-6所示。
进入数据库以后,左边的侧边栏里显示着数据库的各个表,单击就可以进入,也可以单击右边的图标,如图7-7所示。
在此页面中,可通过图片中所标示的各按钮完成对数据库中各表的相关操作。
进入表以后,可以对表进行相关操作,如图7-8所示。
3.修复数据库
数据表损坏时,可以通过phpMyAdmin进行修复,方法如下。
第1步:登录phpMyAdmin,进入需要修复的数据库页面,勾选一个数据表,如图7-9所示。
第2步:在页面下方“选中项”下拉列表中选择“修复表”命令,如图7-10所示。
4.恢复和备份数据库
当需要备份数据库或将数据库移到其他计算机时,可以先导出数据库,然后再到目标计算机导入数据库。下面将介绍如何使用phpMyAdmin来备份与导出数据库。
1)备份数据库
第1步:打开phpMyAdmin,单击页面中的“导出”命令,如图7-11所示,在浏览器中打开如图7-12所示页面。
第2步:选择需要导出备份的数据库(按住Ctrl键可选择多项),选择完毕后单击右下角的“执行”按钮,弹出对话框导出文件,如图7-13所示。
在对话框中选择保存路径并修改文件名后单击“下载”按钮即可。
2)导入SQL文件
导入数据库是重建与恢复数据库的最佳方法,前提是导入之前已备份数据库。
第1步:登录phpMyAdmin,单击右边的Import选项,如图7-14所示。
第2步浏览文件位置,选择一个要导入的数据库文件,选择完毕后,单击右下角的“执行”按钮,如图7-15所示。
成功导入数据库后,浏览器中显示如图7-16所示页面。
3)执行SQL语句
在phpMyAdmin中可以输入SQL语句,进行各种数据库操作。
第1步:在phpMyAdmin主页面中选中要操作的数据库,如图7-17所示。
第2步:单击SQL按钮,如图7-18所示。
第3步:在弹出的对话框中输入要执行的SQL语句后,单击“执行”按钮,如图7-19所示。
语句执行后,浏览器中显示如图7-20所示的执行结果。
7.1.2 MySQL基本操作
与MySQL数据库服务器创建数据库连接成功后,就可以开始执行SQL命令,对MySQL数据库进行相关操作。下面介绍完成MySQL数据库相关操作的基本SQL命令。
1.建立数据库操作
语法:create database数据库名
可以创建一个具有指定名称的数据库。如果要创建的数据库已经存在,或者没有创建它的适当权限,则此语句失败。
例如,建立一个数据库名为HBSI_school的数据库:
mysql> create database HBSI_school;
2.选中当前数据库
语法:use数据库名
可以选定数据库以使用它,为了使HBSI_school成为当前的数据库,可以使用下面的命令:
mysql> use HBSI_school;
3.创建表
语法:create table表名
( 列名1 列类型 [<列的完整性约束>], [列名2 列类型 [<列的完整性约束>], ... 列名n 列类型 [<列的完整性约束>] ] );
使用create table命令可在当前数据库下创建一个表,可选数据类型如表7-1所示。
例如,创建表tstudent:
create table tstudent ( sid char(4) primary key, sname varchar(20) not null, sex varchar(6), profession varchar(30) not null, birthday date not null, note varchar(60) );
4.插入记录
执行完创建表的语句后,tstudent表已被建立,但是表中没有一条记录,需要使用insert语句向表中插入记录。语法如下所示。
insert into table_name [(列名1, 列名2,…)] values (数值1, 数值2,…)
插入的数据应与字段的数据类型相同。数据的大小应在列的规定范围内,例如,不能将一个长度为80的字符串加入到长度为40的列中。在values中列出的数据位置必须与被加入的列的排列位置相对应。
例如,向表tstudent中插入记录:
insert into tstudent values ('0001','tom','3g','male','1990-01-01', 'good');
5.update
如果需要修改表中的记录,要通过使用update命令,语法如下所示。
update tbl_name set col_name1=expr1 [, col_name2=expr2 …] [where where_definition]
update语法可以用新值更新原有表行中的各列,set子句指示要修改哪些列和要给予哪些值,where子句指定应更新哪些行,如没有where子句,则更新所有的行。
例如,修改tstudent表中sid字段值为0001的记录的sname与profession字段的值:
update tstudent set sname='Jaky', profession ='php',birthday='1990-10-07' where sid='0001';
6.删除表中数据
如果表中的记录需要被删除,可使用delete命令,其语法如下所示。
delete from tbl_name [where where_definition]
如果不使用where子句,将删除表中所有数据。delete语句不能删除某一列的值(可使用update)。使用delete语句仅删除记录,不删除表本身。如要删除表,使用drop table语句。同insert和update一样,从一个表中删除记录将引起其他表的参照完整性问题,在修改数据库数据时,头脑中应该始终不要忘记这个潜在的问题。删除表中数据也可使用truncate table语句,它和delete有所不同,参看MySQL文档。在MySQL中有两种方法可以删除数据,一种是MySQL的delete语句,另一种是MySQL的truncate table语句。delete语句可以通过where对要删除的记录进行选择。而使用truncate table将删除表中的所有记录。
例如,删除表中sid字段值为0003的记录:
delete from tstudent where sid="0003";
7.查询记录
当需要查看数据库某张表中的记录时,可使用select命令。语法如下所示。
select [distinct] *|{column1, column2, column3…} from table;
命令select指定查询哪些列的数据,column指定列名,*号代表查询所有列;from指定查询哪张表;distinct可选,指显示结果时,是否剔除重复数据。
例如,查询学时数为100的课程信息:
select * from tstudent where sid='0001';