MySQL函数库
今天我们来看一下MySQL函数库,这个函数库是一个外部函数库!这个函数提供了对于MySQL数据库进行操作的常用函数,如连接MySQL服务器、打开数据库、执行SQL语句等。所以这个函数库的功能对于我们来说是非常重要的!
其实,MySQL数据库是整个程序开发的最底层,我们在程序开发时,就必须为其添加一层漂亮的外衣,这层漂亮的外衣就是图形化用户界面(Graphical User Interface,简称GUI,又称图形用户接口),也就是使用者只需要具体基本的计算机知识,然后通过鼠标,就可以实现某些复杂的功能!其实,我们现在所使用的Windows操作系统就是典型的GUI!
1. mysql_connect
功能:建立到MySQL服务器的连接
语法:[$变量名称=]mysql_connect(“服务器名称:端口”,”用户名”,”密码”);
如果正确的连接到了MySQL服务器,则返回值的数据类型为资源(resource),否则将返回布尔型false
2. mysql_select_db
功能:打开指定数据库
语法:[$变量名称=]mysql_select_db(“数据库名称”[,连接标识符]);
如果省略连接标识符,则默认情况下使用刚刚打开的服务器连接
3. mysql_query
功能:执行MySQL命令
语法:[$变量名称=]mysql_query(“SQL命令”[,连接标识符]);
如果省略连接标识符,则默认情况下使用刚刚打开的服务器连接
理论上来说,执行的SQL命令为任意SQL命令,如创建数据表、存储过程、触发器等,但实际上来说,SQL命令一般只是记录的插入、删除、更新和查询!因为,我们在程序设计之初,首先就是数据库的规划,对于数据库中存在多少张数据表、数据表中存在多少个字段以及数据表之间的关系,我们可以根据项目需求来规划,但是数据表中到底有多少记录,则无从规定,所以,SQL命令就是记录的增、删、改、查这四大操作!
另外,SQL[Structured Query Language,结构化查询语言]中的Query意为查询,但不要理解为查找,查找只是一种查询命令!SQL命令一般可以分为DDL和DML,这里的Query是所有SQL命令的统称。这一点对于初始者来说,必须要分清!
如果执行的SQL命令为SELECT,SHOW,EXPLAIN 或 DESCRIBE,这些命令正确执行的话,返回结果的数据类型为资源;错误执行的话,返回结果为布尔型false。对于其他所有的命令,正确执行返回结果为true;错误执行返回结果为false。
4. mysql_num_rows
功能:返回结果集中包含的记录数目
语法:[$变量名称=]mysql_num_rows($结果集名称);
此命令仅对 SELECT 语句有效
5. mysql_num_fields
功能:返回结果集中包含的字段数目
语句:[$变量名称=]mysql_num_fields($结果集名称);
6. mysql_field_name
功能:获取指定索引位置的字段名称
语法:[$变量名称=]mysql_field_name($结果集名称,字段索引位置);
说明:字段索引位置从0开始编号
7. mysql_fetch_array
功能:从结果集中抽取一行作为数字数组或关联数组或两者兼之
语法:[$变量名称=]mysql_fetch_array($结果集名称[,MYSQL_NUM|MYSQL_ASSOC|MYSQL_BOTH]);
8. mysql_fetch_row
功能:从结果集中抽取一行作为数字数组
语法:[$变量名称=]mysql_fetch_row($结果集名称);
9. mysql_fetch_assoc
功能:从结果集中抽取一行作为关联数组
语法:[$变量名称=]mysql_fetch_assoc($结果集名称);
10. mysql_insert_id
功能: 取得上一步 INSERT 操作产生的 ID
语法:[$变量名称=]mysql_insert_id([连接标识符]);
mysql_insert_id() 将 MySQL 内部的 C API 函数 mysql_insert_id() 的返回值转换成 long(PHP 中命名为 int)。如果 AUTO_INCREMENT 的列的类型是 BIGINT,则 mysql_insert_id() 返回的值将不正确。可以在 SQL 查询中用 MySQL 内部的 SQL 函数 LAST_INSERT_ID() 来替代。
11. mysql_affected_rows
功能:获取insert、update、delete操作所影响的记录数
语法:[$变量名称=]mysql_affected_rows([连接标识符]);
12. mysql_free_result
功能:释放结果集
语法:[$变量名称=]mysql_free_result($结果集名称);
13. mysql_close
功能:关闭数据库连接
语法:[$变量名称=]mysql_close([连接标识符]);
我们还要来看一个案例吧!
在MySQL内创建如下结构的数据表,并且添加记录
use test;
create table users
(
uid smallint unsigned not null primary key auto_increment,
username varchar(20) not null unique,
password varchar(32) not null
);
insert into users(username,password) values('admin','21232f297a57a5a743894a0e4a801fc3');
insert into users(username,password) values('test','098f6bcd4621d373cade4e832627b4f6');
insert into users(username,password) values('ccjsj','12a5163ff108df1d7314dd28a0ff29d2');
现在,我们的任务就是通过PHP的应用程序来读取数据库中的数据!
$conn = mysql_connect("localhost","root","ccjsj");
mysql_select_db("test");
$sql = "select * from users";
$result = mysql_query($sql);
$rowsNum = mysql_num_rows($result);
$fieldsNum = mysql_num_fields($result);
$table .= "\n";
$table .= "\n";
for($i=0;$i
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com