澳门皇冠金沙网站-澳门皇冠844网站

热门关键词: 澳门皇冠金沙网站,澳门皇冠844网站

实用函数7,数据库函数库

object mysql_fetch_field(int result,int[field_offset])
//把结果指针设置为一个具体的字段偏移量。下次调用mysql_fetch()时将使用该偏移量

二.PHP中其他MySQL操作函数

mysql_data_seek
移动内部返回指针。
语法: int mysql_data_seek(int result_identifier, int row_number);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数可移动内部返回的列指针到指定的 row_number 去。之后若使用 mysql_fetch_row() 可以返回新列的值。成功返回 true、失败则返回 false。

int mysql_num_fields(int result)
//获得以枚举数组方式表示的结果记录

1.mysql_num_fields()函数

       语法格式:int mysql_num_fields ( resource $result )
       函数功能:去的结果集result中字段的数目。

mysql_field_type
获得目前字段的类型。
语法: string mysql_field_type(int result, int field_offset);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数可以得到目前所在字段的类型格式。返回的字符串为字段的类型,包括了 int、real、string、blob....等等,详见 MySQL 的相关文件中有关于类型的部份。
使用范例 
<?php
mysql_connect("localhost:3306");
mysql_select_db("wisconsin");
$result = mysql_query("SELECT * FROM onek");
$fields = mysql_num_fields($result);
$rows = mysql_num_rows($result);
$i = 0;
$table = mysql_field_table($result, $i);
echo "资料表 '".$table."' 有 ".$fields." 栏及 ".$rows." 列。<br>";
echo "本资料表的字段如下<br>";
while ($i < $fields) {
$type = mysql_field_type ($result, $i);
$name = mysql_field_name ($result, $i);
$len = mysql_field_len ($result, $i);
$flags = mysql_field_flags ($result, $i);
echo $type." ".$name." ".$len." ".$flags."<br>";
$i ;
}
mysql_close();
?>

int mysql_data_seek(int result_identifier,int row_number)
//将上一个mysql_fetch_row()所访问的记录各字段长度以数组形式返回

2.mysql_result()函数

       语法格式:mixed mysql_result(resource result,int row [,mixed field])
       函数功能:返回结果集result中一个字段的字段值。字段参数可以是字段偏移量或者字段名,或者是“表名.字段名”。
例如: mysql_result.php

<?php
$serverLink = @mysql_connect("localhost","root","") or die("连接服务器失败!程序中断执行!");
mysql_query("set names 'gbk'");
$selectSQL = "select * from student";
$resultSet = @mysql_db_query("student",$selectSQL);

echo "<br/>";
echo mysql_result($resultSet,0,0);
echo " ";
echo mysql_result($resultSet,0,1);
echo " ";
echo mysql_result($resultSet,0,2);
echo " ";
echo mysql_result($resultSet,0,3);
mysql_free_result($resultSet);
mysql_close($serverLink);
?>

mysql_error
返回错误信息。
语法: string mysql_error(int [link_identifier]);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数可以得到 MySQL 数据库服务器的错误信息。通常用在 PHP 网页程序开发阶段,与 mysql_errno() 一起作为PHP 与 MySQL 的除错用。
参考: mysql_errno()

int mysql_querry(string query[,int link_identifier])
//选择一个MySQL数据库并向MySQL发送一个SQL查询

一.PHP中常用的MySQL操作函数

mysql_affected_rows
得到 MySQL 最后操作影响的列数目。
语法: int mysql_affected_rows(int [link_identifier]);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数可得到 MySQL 最后查询操作 INSERT、UPDATE 或 DELETE 所影响的列 (row) 数目。若最后的查询 (query) 是使用 DELETE 而且没有使用 WHERE 命令,则会删除全部资料,本函数将返回 0。若最后使用的是 SELECT,则用本函数不会得到预期的数目,因为要改变 MySQL 数据库本函数才有效,欲得到 SELECT 返回的数目需使用 mysql_num_rows() 函数。

int mysql_num_rows(int result)
//获得结果集中的字段数

1.4.发送sql语句或mysql命令

       建立MySQL服务器连接,设置gbk字符集,并选择了当前操作的数据库后,就可以使用mysql_query()函数向MySQL服务器发送MySQL命令。
       语法格式:{bool|resource} mysql_query() (string sql [,resource link_identifier])
       函数功能:如果没有指定MySQL服务器连接标识,则使用已打开的连接。然后向数据库引擎发送sql字符串。当发送的sql字符串执行失败时,返回FALSE;发送的sql字符串是insert语句、update语句或delete语句,成功返回TRUE;发送的sql字符串是select语句,并且select语句成功执行时,mysql_query()函数返回结果集(result)类型的数据(实际是resource类型的数据)。

mysql_connect
打开 MySQL 服务器连接。
语法: int mysql_connect(string [hostname] [:port], string [username], string [password]);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数建立与 MySQL 服务器的连接。其中所有的参数都可省略。当使用本函数却不加任何参数时,参数 hostname 的默认值为 localhost、参数 username 的默认值为 PHP 执行行程的拥有者、参数 password 则为空字符串 (即没有密码)。而参数 hostname 后面可以加冒号与埠号,代表使用那个埠与 MySQL 连接。当然在使用数据库时,早点使用 mysql_close() 将连接关掉可以节省资源。
使用范例 
这是一位未具名网友提供的范例 (18-Feb-1999) 
<?php 
$dbh = mysql_connect('localhost:3306','mcclain','standard'); 
mysql_select_db('admreqs'); 
$query = "insert into requests(date, request, email, priority,status) values (NOW(),'$description', '$email', '$priority', 'NEW')"; 
$res = mysql_query($query, $dbh); 
$query = "select max(id) from requests"; 
$res = mysql_query($query, $dbh); 
$err = mysql_error(); 
if($err){ 
echo "发生错误,请通知<a href=mailto:webmaster@my.site>站长</a>"; 

$row = mysql_fetch_row($res); 
echo "未来您使用的号码为: ".$row[0]; 
?> 
参考: mysql_close() mysql_pconnect()

object mysql_fetch_object(int result,int[result_type]
//用来将查询结果result拆解到数组变量中

1.2mysql_list_dbs()函数

       语法格式:resource mysql_list_dbs ([ resource $link_identifier ] )
       函数功能:列出MySQL服务器中所有的数据库。mysql_list_dbs()函数返回了一个包含了当前MySQL服务器中所有可用的数据库的结果集。

mysql_fetch_lengths
返回单列各栏资料最大长度。
语法: array mysql_fetch_lengths(int result);
返回值: 数组
函数种类: 数据库功能
内容说明: 本函数将 mysql_fetch_row() 处理过的最后一列资料的各字段资料最大长度放在数组变量之中。若执行失败则返回 false 值。返回数组的第一笔资料索引值是 0。
参考: mysql_fetch_row()

mixed mysql_result(resource result,int row[,mixed field])
//获得结果集中的记录数

4.mysql_field_len()函数

       语法格式:int mysql_field_len ( resource $result , int $field_offset )
       函数功能:返回结果集result中指定字段的长度。

mysql_field_flags
获得目前字段的标志。
语法: string mysql_field_flags(int result, int field_offset);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数可以得到目前所在字段的标志。若一个字段有数种属性标志,则返回的标志为这些属性连起来的字符串,每个属性都用空格隔开,可以使用 explode() 切开这些字符串。返回的标志可能是:not_null、primary_key、unique_key、multiple_key、blob、unsigned、zerofill、binary、enum、auto_increment、timestamp。

int mysql_pconnect([string server[,string username[,string[password]]])
//关闭一个MySQL连接。不影响持久性连接

       mysql_db_query()函数

       语法格式:发送一条SQL语句。mysql_db_query()函数选择一个当前操作的数据库并向数据库服务器引擎中发送SQL语句。
例如:select.php

<?php
$serverLink = @mysql_connect("localhost","root","") or die("连接服务器失败!程序中断执行!");
mysql_query("set names 'gbk'");
$selectSQL = "select * from student";
$resultSet = @mysql_db_query("student",$selectSQL);
var_dump($resultSet);
echo "<br/>";
echo "student表的记录数为:".mysql_num_rows($resultSet);
mysql_free_result($resultSet);
mysql_close($serverLink);
?>

mysql_select_db
选择一个数据库。
语法: int mysql_select_db(string database_name, int [link_identifier]);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数选择 MySQL 服务器中的数据库以供之后的资料查询作业 (query) 处理。成功返回 true,失败则返回 false。
参考: mysql_connect() mysql_pconnect() mysql_query()

bool mysql_close([resource link_identifier])
//选择一个MySQL数据库

1.1mysql_create_db()函数

       语法格式:bool mysql_create_db ( string $database name [, resource $link_identifier ] )
       函数功能:新建一个MySQL数据库。
       说明:如果MySQL扩展库是基于MySQL4.x客户端库建立的,本函数不可用。

mysql_query
送出一个 query 字符串。
语法: int mysql_query(string query, int [link_identifier]);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数送出 query 字符串供 MySQL 做相关的处理或者执行。若没有指定 link_identifier 参数,则程序会自动寻找最近打开的 ID。当 query 查询字符串是 UPDATE、INSERT 及 DELETE 时,返回的可能是 true 或者 false;查询的字符串是 SELECT 则返回新的 ID 值。joey@samaritan.com (09-Feb-1999) 指出,当返回 false 时,并不是执行成功但无返回值,而是查询的字符串有错误。
参考: mysql_db_query() mysql_select_db() mysql_connect() 

string mysql_field_table(int result,int field_offset)
//返回指定字段的长度

3.mysql_errno()函数

       语法格式:int mysql_error([resource link_identifier])
       函数功能:返回MySQL数据库服务器的错误代码,如果没有出错则返回0。
       说明:mysql_errno()函数仅返回最近一次MySQL函数的错误代码,因此尽早调用该函数。

mysql_list_tables
列出指定数据库的资料表 (table)。
语法: int mysql_list_tables(string database, int [link_identifier]);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数可以得到指定数据库中的所有资料表名称。

int mysql_affected_rows([int link_identifier])
//获得前一个Insert操作生成的主键值,该值由该表的auto_increment的字段产生

1.7MySQL服务器连接与关闭最佳时机

       MySQL服务器连接应该今早地关闭,这并不意味着在同一个php脚本中,每一次数据库操作后,立即关闭MySQL服务器连接,例如,closeConnectionTime.php

<?php
function student_query(){
            $serverLink = @mysql_connect("localhost","root","") or die("连接服务器失败!程序中断执行!");
            mysql_query("set names 'gbk'");
            $dbLink = @mysql_select_db("student") or die("选择当前数据库失败!程序中断执行!");
    $selectSQL = "select * from student";
    $resultSet = mysql_query($selectSQL) or die(mysql_error());
    while($student = mysql_fetch_array($resultSet)){
        echo $student['student_id']." ";
        echo $student['student_no']." ";
        echo $student['student_name']."<br/>";
    }
    mysql_free_result($resultSet);
            mysql_close($serverLink);
}
student_query();
student_query();
?>

       在closeConnectionTime.php程序中,每调用一次student_query()函数,都会开启新的MySQL服务器连接和关闭mysql服务器连接,耗费了网络资源和服务器资源,修改如下:

<?php
function student_query(){
    $selectSQL = "select * from student";
    $resultSet = mysql_query($selectSQL) or die(mysql_error());
    while($student = mysql_fetch_array($resultSet)){
        echo $student['student_id']." ";
        echo $student['student_no']." ";
        echo $student['student_name']."<br/>";
    }
    mysql_free_result($resultSet);

}
$serverLink = @mysql_connect("localhost","root","") or die("连接服务器失败!程序中断执行!");
mysql_query("set names 'gbk'");
$dbLink = @mysql_select_db("student") or die("选择当前数据库失败!程序中断执行!");
student_query();
student_query();
mysql_close($serverLink);
?>

mysql_list_dbs
列出 MySQL 服务器可用的数据库 (database)。
语法: int mysql_list_dbs(int [link_identifier]);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数可以得到 MySQL 服务器的可用数据库。

int mysql_insert_id([int link_identifier])
//可用来获得查询结果数据记录中的某个数据项

1.mysql_fetch_lengths()函数

       语法格式:array mysql_fetch_lengths ( resource $result )
       函数功能:返回结果集result中每个字段内容的长度。使用mysql_fetch_lengths()函数前通常先使用mysql_fetch_row()函数或mysql_fetch_array()函数取得记录集中所有字段。如果mysql_fetch_lengths()函数成功执行,将返回一个整数键数组;如果执行失败,返回或没有任何结果 返回FALSE。
fetchLengths.php

<?php
$serverLink = @mysql_connect("localhost","root","") or die("连接服务器失败!程序中断执行!");
mysql_query("set names 'gbk'");
$selectSQL = "select * from student";
$resultSet = @mysql_db_query("student",$selectSQL);
var_dump(mysql_fetch_row($resultSet));
echo "<br/>";
var_dump(mysql_fetch_lengths($resultSet));
mysql_free_result($resultSet);
mysql_close($serverLink);
?>

mysql_fetch_field
取得字段信息。
语法: object mysql_fetch_field(int result, int [field_offset]);
返回值: 类
函数种类: 数据库功能
内容说明: 本函数返回的类资料为 result 的字段 (Column) 信息。返回类的属性如下:
name - 字段名称 
table - 字段所在表格的资料表名称 
max_length - 字段的最大长度 
not_null - 若为 1 表示本字段不能是空的 (null) 
primary_key - 若为 1 表示本字段是主要键 (primary key) 
unique_key - 若为 1 表示本字段为不可重覆键 (unique key) 
multiple_key - 若为 1 表示本字段为可重覆键 (non-unique key) 
numeric - 若为 1 表示本字段为数字类型 (numeric) 
blob - 若为 1 表示本字段为位类型 (BLOB) 
type - 字段类型 
unsigned - 若为 1 表示本字段为无记号 (unsigned) 
zerofill - 若为 1 表示本字段为被零填满 (zero-filled) 
参考: mysql_field_seek()

本文由澳门皇冠金沙网站发布于编辑程序,转载请注明出处:实用函数7,数据库函数库