mysql函数怎么提交 mysql手动提交( 二 )


4. 从结果集中取得一行作为枚举数组:mysql_fetch_row
array mysql_fetch_row(resource $result)
从和指定的结果标识关联的结果集中取得一行数据并作为数组返回 。每个结果的列储存在一个索引数组的单元中,偏移量从0开始 。依次调用mysql_fetch_row()将返回结果集中的下一行,如果没有更多行则返回false 。
5. 从结果集中取得一行作为关联数组,或数字数组 , 或二者兼有:mysql_fetch_array
array mysql_fetch_array(resource $result[, int $result_type])
mysql_fetch_row()的扩展版本 。除了将数据以数字索引方式储存在数组中之外 , 还可以将数据作为关联索引储存,用字段名作为键名 。如果结果中出现字段名重名的现象,最后一列将优先 。要访问同名的其他列 , 必须用该列的数字索引或给该列起个别名 。对有别名的列 , 用别名来访问其内容 。
6. 关闭 MySQL 连接:mysql_close
bool mysql_close([resource $link_identifier])
mysql_close()关闭指定的连接标识所关联的到MySQL服务器的非持久连接 。如果没有指定link_identifier,则关闭上一个打开的连接 。
例PHP中使用MySQL数据库(mysql.php)
?php//连接MySQL数据库
mysql_connect('localhost', 'root', '123');
//选择当前数据库
//等效为执行USE test
mysql_select_db('test');
//在当前数据库执行SQL语句
$query = "SELECT * FROM students";
$result = mysql_query($query);
//操作上次查询返回的结果集 , 注意$result变量一般是需要的
while($student = mysql_fetch_array($result)) {
echo 'pre';
print_r($student);
echo '/pre';
}
?
mysql udf函数怎么调用1)基本用户定义函数是一类代码,对MYSQL服务器功能进行扩充,通过添加新函数,性质就象使用本地MYSQL函数abs()或concat().UDF是用C(或C++)写的 。也许还可以用BASIC,.NET或其它什么虽然还没见过有人这么做 。
2)从字面上何以知道UDF是很有用的,尤其当需要扩展MYSQL服务器功能时 。下表给出了最佳解决方法的比较:
MethodSpeedLanguageDevelopment
方法速度语言开发
Stored ProceduresslowSQL~minutes (for small functions)
存储过程慢SQL~分钟(对于小函数)
UDFfastC~hour
UDF快C~小时
Native FunctionfastCmajor pain in the ***
本地函数快C未知
慢的意思是和其它比较时 。存储过程和一般SQL语句比仍然是很快的 。
对本地函数的一点解释:本质上和UDF没太大区别 。但是必须用MYSQL的资源代码来写然后重新编译全部 。这将是很大的工作量 , 必须一边又一边的用最新版的MYSQL来完成这项工作 。
3)这部分很简单 。当完成了一个UDF,只是使用它就可以了 。例如:"SELECT MyFunction(data1, data2) FROM table"
4)编写UDF
现在开发写一个UDF:
建立一个新的shared-library项目(该例中用的VC++ 6.0建立一个标准的DLL)
首先需要一些头文件 。这些头文件是标准的头文件和MYSQL服务器的包含目录里的文件
#ifdef STANDARD
/* STANDARD is defined, don't use any mysql functions */
#include
#include
#include
#ifdef __WIN__
typedef unsigned __int64 ulonglong;/* Microsofts 64 bit types */
typedef __int64 longlong;
#else
typedef unsigned long long ulonglong;
typedef long long longlong;
#endif /*__WIN__*/
#else
#include
#include
#endif
#include
#include
static pthread_mutex_t LOCK_hostname;
现在必须决定需要哪类函数 。本质上有两种选择:
该函数是聚合函数吗?(后面将学习很多关于聚合函数的内容)

推荐阅读