首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 图形图象-> Director教程
php与mysql交互函数表学习笔记_php技巧
作者:网友供稿 点击:0
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
最近一直在研究PHP与MYSQL,感觉PHP与MYSQL交互的函数都是过程化的,当然也有mysqli扩展,面向对象,Java和C#写多了之后,再写PHP,有些不适应,感觉又回到了学C的年代。今天学习了一些函数,记录下来,以便日后忘记时,可以参考。

说 明 函 数 说 明
建立数据库连接 mysql_connect() resource mysql_connect([string hostname [:port] [:/path/to/socket] [, string username] [, string password]])
示例:$conn = @mysql_connect("localhost", "username", "password") or dir("不能连接到Mysql Server");
使用该连接必须显示的关闭连接
建立数据库连接 mysql_pconnect() resource mysql_pconnect([string hostname [:port] [:/path/to/socket] [, string username] [, string password]])
示例:$conn = @mysql_pconnect("localhost", "username", "password") or dir("不能连接到Mysql Server");
使用该连接函数不需要显示的关闭连接,它相当于使用了连接池
关闭数据库连接 mysql_close() $conn = @mysql_connect("localhost", "username", "password") or die("不能连接到Mysql Server");
@mysql_select_db("MyDatabase") or die("
不能选择这个数据库,或数据库不存在");
echo "
你已经连接到MyDatabase数据库
";
mysql_close();
 
选择数据库 mysql_select_db() boolean mysql_select_db(string db_name [, resource link_id])
$conn = @mysql_connect("localhost", "username", "password") or die("
不能连接到Mysql Server");
@mysql_select_db("MyDatabase") or die("
不能选择这个数据库,或数据库不存在");
 
查询MySQL mysql_query() resource mysql_query (string query, [resource link_id])
$linkId = @mysql_connect("localhost", "username", "password") or die("
不能连接到Mysql Server");
@mysql_select_db("MyDatabase") or die("
不能选择这个数据库,或者数据库不存在");
$query = "select * from MyTable";
$result = mysql_query($query);
mysql_close();
SQL查询执行成功,则返回资源标识符,失败时返回FALSE。若执行更新成功,则返回TRUE,否则返回FALSE
查询MySQL mysql_db_query() resource mysql_db_query(string database, string query [, resource link_id])
$linkId = @mysql_connect("localhost", "username", "password") or die("
不能连接到MysqlServer");
$query = "select * from MyTable";
$result = mysql_db_query("MyDatabase", $query);
mysql_close();
为了使代码清晰,不推荐使用这个函数调用
获取和显示数据 mysql_result() mixed mysql_result (resource result_set, int row [, mixed field])
$query = "select id, name from MyTable order by name";
$result = mysql_query($query);
$c_id = mysql_result($result, 0, "id");
$c_name = mysql_result($result, 0, "name");
最简单、也是效率最低的数据获取函数
获取和显示数据 mysql_fetch_row() array mysql_fetch_row (resource result_set)
$query = "select id, name from MyTable order by name";
$result = mysql_query($query);
while (list($id, $name) = mysql_fetch_row($result)) {
        echo("Name: $name ($id) <br />");
}
函数从result_set中获取整个数据行,将值放在一个索引数组中。通常会结使list()函数使用
获取和显示数据 mysql_fetch_array() array mysql_fetch_array (resource result_set [, int result_type])
$query = "select id, name from MyTable order by name";
$result = mysql_query($query);
while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
        $id = $row["id"];
        $name = $row["name"];
        echo "Name: $name ($id) <br />";
}
result_type的值有:
MYSQL_ASSOC:
字段名表示键,字段内容为值
MYSQL_NUM: 数值索引数组,操作与mysql_fetch_ros()
函数一样
MYSQL_BOTH: 即作为关联数组又作为数值索引数组返回。result_type的默认值。
获取和显示数据 mysql_fetch_assoc() array mysql_fetch_assoc (resource result_set)
相当于调用 mysql_fetch_array(resource, MYSQL_ASSOC);
 
获取和显示数据 mysql_fetch_object() object mysql_fetch_object(resource result_set)
$query = "select id, name from MyTable order by name";
while ($row = mysql_fetch_object($result)) {
        $id = $row->id;
        $name = $row->name;
        echo "Name: $name ($id) <br />";
}
在操作上与mysql_fetch_array()相同
所选择的记录 mysql_num_rows() int mysql_num_rows(resource result_set)
#query = "select id, name from MyTable where id > 65";
$result = mysql_query($query);
echo "
".mysql_num_rows($result)."条记录的ID大于65";
只在确定select查询所获取的记录数时才有用。
受影响的记录 mysql_affected_rows() int mysql_affected_rows([resource link_id])
$query = "update MyTable set name=CheneyFu where id>=5";
$result = mysql_query($query);
echo "ID
大于等于5的名称被更新了的记录数:".mysql_affected_rows();
该函数获取受INSERT,UPDATEDELETE更新语句影响的行数
获取数据库列表信息 mysql_list_dbs() resource mysql_list_dbs([resource link_id])
mysql_connect("localhost", "username", "password");
$dbs = mysql_list_dbs();
echo "Databases: <br />";
while (list($db) = mysql_fetch_rows($dbs)) {
        echo "$db <br />";
}
 
获取数据库名 mysql_db_name() string mysql_db_name(resource result_set, integer index) 该函数获取在mysql_list_dbs()所返回result_set中位于指定index索引的数据库名
获取数据库表列表 mysql_list_tables() resource mysql_list_tables(string database [, resource link_id])
mysql_connect("localhost", "username", "password");
$tables = mysql_list_tables("MyDatabase");
while (list($table) = mysql_fetch_row($tables)) {
        echo "$table <br />";
}
该函数获取database中所有表的表名
获取数据库表名 mysql_tablename() string mysql_tablename(resource result_set, integer index)
mysql_connect("localhost", "username", "password");
$tables = mysql_list_tables("MyDatabase");
$count = -1;
while (++$count < mysql_numrows($tables)) {
        echo mysql_tablename($tables, $count)."<br />";
}
该函数获取mysql_list_tables()所返回result_set中位于指定index索引的表名
获取字段信息 mysql_fetch_field() object mysql_fetch_field(resource result [, int field_offset])
mysql_connect("localhost", "username", "password");
mysql_select_db("MyDatabase");
$query = "select * from MyTable";
$result = mysql_query($query);
$fields = mysql_num_fields($result);
for($count = 0; $count < $fieds; $count++) {
       $field = mysql_fetch_field($result, $count);
       echo "<p>$field->name  $field->type  ($field->max_length) </p>";
}
返回的对象共有12个对象属性:
name:
字段名
table:
字段所在的表
max_length:
字段的最大长度
not_null: 如果字段不能为null,则为1,否则
0
primary_key:
如果字段为主键,则为1,否则
0
unique_key:
如果字段是唯一键,则为1 否则
0
multiple_key:
如果字段为非唯一,则为1,否则
0
numeric:
如果字段为数值则为1,否则
0
blob:
如果字段为BLOB则为1,否则为
0
type:
字段的数据类型
unsigned: 如果字段为无符号数则为1,否则为
0
zerofill:
如果字段为“零填充”则为1 否则为0
获取查询的字段数 mysql_num_fields() integer mysql_num_fields (resource result_set)
$query = "select id, name from MyTable order by name";
$result = mysql_query($query);
echo "
这个查询的字段数是:".mysql_num_fields($result)."<br />";
返回查询result_set中的字段数
获取指定表的所有字段的字段名 mysql_list_fields() resource mysql_list_fields (string database_name, string table_name [, resource link_id])
$fields = mysql_list_fields("MyDatabase", "MyTable");
echo "
数据库MyDatabase中表MyTable的字段数: ".mysql_num_fields($fields)."<br />";
 
获取指定的字段选项 mysql_field_flags() string mysql_field_flags (resource result_set, integer field_offset)  
获取指定的字段的最大长度 mysql_field_len() integer mysql_field_len (resource result_set, integer field_offset)
$query = "select name from MyTable";
$result = mysql_query($query);
$row = mysql_fetch_row($result);
echo mysql_field_len($result, 0)."<br />";
如果mysql_field_len($reseult, 0) = 16777215
那么numer_format(mysql_field_len($result))等于16,777,215
获取字段名 mysql_field_name() string mysql_field_name (resource result_set, int field_offset)
$query = "select id as PKID, name from MyTable order by name";
$result = mysql_query($query);
$row = mysql_fetch_row($result);
echo mysql_field_name($result, 0); // Result: PKID
 
获取字段类型 mysql_field_type() string mysql_field_type (resource result_set, int field_offset)
$query = "select id, name from MyTable order by name";
$result = mysql_query($query);
$row = mysql_fetch_row($result);
echo mysql_field_type($result, 0); // Result: int
 
获取字段所在表名 mysql_field_table() string mysql_field_table (resource result_set, int field_offset)
$query = "select id as PKID, name from MyTable order by name";
$result = mysql_query($query);
$row = mysql_fetch_row($result);
echo mysql_field_table($result, 0);  // Result: MyTable


文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·用Session对Web页面进行保护-PHP教程,PHP应用
·C#数据库編程2-.NET教程,数据库应用
·Java变量类型间的相互转换-JSP教程,Jsp/Servlet
·HTML中的数据绑定(Data Binding)-.NET教程,数据库应用
·开关电源发展轨迹
·大功率开关电源系统通信模块设计
·在C#中使用ADO.Net部件来访问Access数据库-.NET教程,数据库应用
·新型数字交叉连接系统sdxc的功能及其在通信网络中应用研究
·WinCE 5.0边做边学(1)-.NET教程,评论及其它
·ups供电系统的可靠性和”可利用率”
最新文章
·seo策略之大型网站_seo网站优化
·dreamweaver经典插件下载_dreamweaver教程
·使用asp.net ajax框架扩展html map控件_asp.net技巧
·个人网站发展和赚钱的模式—选择篇_网赚技巧
·王通:赚钱的三种基本方式_网赚技巧
·爱卡汽车网总裁张京秋:将会并购互补媒体_站长访谈
·站长访谈:mosens—一个高一站长的建站经历_站长访谈
·初学建站应知:网站文件命名规范_站长心得
·你的网站是否会被搜索引擎封杀?_站长心得
·google优化网站管理员指导方针_站长心得
相关主题
  • php与mysql三日通-第三天-PHP教程,PHP基础
  • php与mysql三日通-第二天-PHP教程,PHP基础
  • php与mysql三日通-第一天-PHP教程,PHP基础
  • php与mysql交互使用详解
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭