按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
作用是对用户发出的命令进行语法检查,检查无误,向服务器提交这些命令请求,接受和向用户返回服务器执行
的结果反馈信息;检查中若发现用户发出的命令不合法,则拒绝向服务器提交命令,同时返回出错信息。
mysql。exe 是在MS…DOS 或命令提示符下使用的一种客户端工具,通过命令的方式操纵服务器。
PHP 讲义 第 58 页 共 90 页
…………………………………………………………Page 59……………………………………………………………
图 MySQL数据库管理系统中的C/S结构
注意:mysql。exe 可以安装在远程主机上,不一定必须和服务程序在一起。
以下说明的前提:安装了MySQL,启动了服务程序。若这部分工作没有做,参考第一章第三节实验中有关内容
现行完成准备工作。
(1)登录和注销
登录:通过客户端程序mysql。exe 与服务器程序建立信任连接。
建立连接时,需要提供客户机名,用户名,密码等参数,经服务器验证通过后,会返回成功建立连接的信息,表
明连接成功。
启动客户端程序mysql。exe:在命令提示符或MS…DOS 下,进入d:mysqlbin,键入命令mysql 回车。
若出现类似如下结果:
Wele to the MySQL monitor。 mands end with ; or g。
Your MySQL connection id is 26 to server version: 3。23。43
Type 'help;' or 'h' for help。 Type 'c' to clear the buffer。
mysql》
则表明连接成功。
mysql 命令的完整形式是:
mysql –h servername –u username –p
参数说明:
…h 指明主机,省略此参数,则默认为 localhost
localhost,MySQL 服务器,在服务器看来,它所在的机器就是localhost,即本地机。
…u 指明用户名(账号)
…p 使用密码
上面键入的命令mysql 后面不带任何参数,这是因为MySQL 安装完毕后,系统数据库mysql 中的权限表user
中,存在默认的空帐号、无密码的超级用户,因此可以从远程主机使用mysql。exe 匿名访问服务器主机。
注销:即断开当前与服务器的连接,键入exit 回车即可。
注意:
“命令+参数;”是命令语句行的一般形式。
在mysql。exe 环境下,使用的命令不区分大小写。
命令的末尾必须带语句结束符——分号,以便让mysql。exe 正确区分、解释、执行一个完整的语句。
(2 )数据库操作
〃Y 创建数据库
基本句法:CREATE DATABASE db_name;
db_name 是要创建的数据库的名字。
该语句执行成功后,会在服务器的 MySQL 数据目录(即 MySQL 安装目录下的data 目录)下面创建一个名
为db_name 的目录。
PHP 讲义 第 59 页 共 90 页
…………………………………………………………Page 60……………………………………………………………
〃Y 查看有哪些数据库
基本句法:SHOW DATABASES;
〃Y 打开数据库(选定数据库)
基本句法:USE db_name;
若要对表进行查询,修改,删除等操作,必须先打开数据库。
〃Y 删除数据库
基本句法:DROP DATABASE 'IF EXISTS' db_name;
DROP DATABASE 删除数据库中的所有表和数据库。要小心地使用这个命令。
DROP DATABASE 返回从数据库目录被删除的文件的数目。通常,这3 倍于表的数量,因为每张表对应于一
个“。myd”文件、一个“。myi”文件和一个“。frm”文件。
文件 作用
tbl_name。frm 表定义(表格)文件
tbl_name。MYD 数据文件
tbl_name。MYI 索引文件
(3)表操作
〃Y 创建表
基本句法:CREATE TABLE table_name(列1 定义,列2 定义,…,列n 定义);
〃Y 查看有哪些表
基本句法:SHOW TABLES;
〃Y 查看表结构
DESCRIBE table_name;
〃Y 查看表中数据
SELECT 列FROM table_name 'WhERE 条件子句' 'GROUP 分组子句' 'ORDER 条件子句';
〃Y 修改表中数据
UPDATE table_name SET 列=新值 'WhERE 条件子句
〃Y 删除表中数据
DELETE FROM table_name 'WhERE 条件子句
(3)权限操作
进行权限操作的帐户必须有进行此类操作的权限。
GRANT 权限列表 ON db_name。 table_name TO 〃username〃@ 〃host〃 'IDENTIFIED BY 〃password〃'
'WITH GRANT OPTION ';
MySQL 默认的超级用户帐号有root、空,且密码都为空。这使得别有用心的人很容易从网络上用mysql。exe 连
接进入,进行破坏活动。
为提高安全性,应在安装完后,迅速更改帐号密码或权限等。
每次更改完毕,必须使用flush privileges ;语句通知服务器启用最新更改的帐号的权限验证用户。
给用户 username (若不存在就新创建一个)从主机host 以密码 password 访问数据库 db_name 中的表
table_name 的权限(ALL PRIVILEGES 、 SELECT 、UPDATE、DELETE、DROP、CREATE、ALTER 、FILE、
GRANT 等)。
赋予ALL PRIVILEGES 权限的用户,在其作用域(如某数据库之某表:db_name。table_name )内,是超级用
户。
权限列表中,权限之间用逗号分隔。
可用符号“*”通配db_name 或table_name,表示所有数据库或所有表。
可用符号“%”通配host,表示除本地机(localhost,服务器所在机器)外的所有主机。
如:
GRANT SELECT ; INSERT ; UPDATE ; DELETE ON ‘test‘。 * TO 〃aaa〃@〃%〃 IDENTIFIED BY 〃aaa〃;
FLUSH PRIVILEGES ;
PHP 讲义 第 60 页 共 90 页
…………………………………………………………Page 61……………………………………………………………
上两句的意思:授予用户aaa 对数据库test 内所有表的SELECT ; INSERT ; UPDATE ; DELETE 权限,允许他
使用密码aaa,能从本地机localhost 以外的所有主机登录服务器。
GRANT SELECT ; INSERT ; UPDATE ; DELETE ON ‘test‘。 * TO 〃aaa〃@〃localhost〃 IDENTIFIED BY 〃aaa〃;
FLUSH PRIVILEGES ;
上两句的意思:授予用户aaa 对数据库test 内所有表的SELECT ; INSERT ; UPDATE ; DELETE 权限,允许他
使用密码aaa,只能从本地机localhost 登录服务器。
SET PASSWORD FOR 〃username〃@ 〃host〃 = PASSWORD(“password”)
以加密形式,更改用户username 的密码
REVOKE ALL PRIVILEGES ON * 。 * FROM 〃username〃@ 〃host〃;
收回用户username 从主机host 访问服务器上所有数据库中所有表的所有权限。
FLUSH PRIVILEGES;
刷新权限列表,通知服务器,启用最新权限,达到使更改后的权限起作用的目的。
4。MySQL 的图形化客户端工具软件
为方便程序员或数据库系统管理员(DBA)对 MySQL 的操作,可采用一些图形化客户端工具软件。常用的有
phpMyAdmin、EMSMySQLManager 等。二者使用方法大同小异,这里只介绍phpMyAdmin。
phpMyAdmin 是一款使用PHP 语言编制的基于Web 使用的MySQL 客户端工具软件。它功能比较丰富,在广大
MySQL 爱好者中得到了普遍赞誉。
安装
该软件安装包在教学网站提供下载。
将软件包解压,放到服务器的documentroot 下,如果你设置的默认文档为index。php,则键入http://服务器地址
/phpMyAdmin 所在目录,回车即可出现phpMyAdmin 的用户登录界面。
如果初次安装好MySQL,可采用默认超级用户的帐号和密码登录:
在用户名中输入帐号(如root),在密码框中输入密码(空,什么也不输入),回车或单击确定按钮,就会进入系
统。
进入系统后,在Language 下拉框中选择适合中国人的系统显示所用的字符集:Chinese Simplified(zh),然后就
会出现中文界面:
PHP 讲义 第 61 页 共 90 页
…………………………………………………………Page 62……………………………………………………………
单击左边的主目录,界面同上,可完成一些系统级操作,如权限管理,数据库管理,导出数据,更改密码,重新
登录(登出)等。
左边主目录下边的数据库下拉框,提供了当前用户所能使用的全部数据库,可选择后进行相关操作。
具体操作,根据中文界面提示,自行学习掌握,这里不再描述。
第二节 用PHP 操纵MySQL
前面我们介绍了通过客户端工具,如mysql。exe 或phpMyAdmin,这些都是系统管理员或者程序员使用的,方便
他们管理数据库或开发工作。但是,在应用系统中,对于普通用户,基于安全的考虑,我们不能允许他们这么做。
一般的做法是通过编制程序,让用户通过程序,来操纵数据库,这样可以根据需要灵活地控制用户对数据库的操
作:既能满足实现他们存取数据的应用需求,又能最大限度地。本课程中,将介绍使用PHP 语言编制程序,让
用户在网络上,通过这种程序来将他们的数据保存到数据库中,或实现修改、删除等对数据库的操作。
1。PHP 数据类型:资源型
概念:一个资源是一个特殊变量,保存了到外部资源的一个引用。资源类型变量保存有为打开文件、数据库连接、
图形画布区域等的特殊句柄,一般用整数来标识。 这个句柄,好像一根管道,将编程语言与其引用的资源如数
据库连接起来,二者的交互,在管道中进行,管道或句柄的代号,即一个正整数标识,就是资源型数据。
资源的释放:
在一个PHP 程序的末尾,资源使用的所有外部资源都会被系统自动释放。如有需要,也可以使用某些释放资源
的函数来显式地释放资源所占内存。
资源的建立:
同资源的释放类似,资源是通过专门的函数来建立和使用的。
PHP 讲义 第 62 页 共