MySQL相关说明
程序员文章站
2022-04-28 14:13:28
资源类型 在 mysql 模块中使用了两种资源类型。第一种是数据库的连接句柄,第二种是 sql 查询返回的结果集。 预定...
资源类型
在 mysql 模块中使用了两种资源类型。第一种是数据库的连接句柄,第二种是 sql 查询返回的结果集。
预定义常量
以下常量由本扩展模块定义,因此只有在本扩展模块被编译到 php 中,或者在运行时被动态加载后才有效。
在 php 4.3.0 以后的版本中,允许在 mysql_connect() 函数和 mysql_pconnect() 函数中指定更多的客户端标记。下面列出所定义的常量:
表格 2. mysql 客户端常量
常量 描述
mysql_client_compress 使用压缩的通讯协议
mysql_client_ignore_space 允许在函数名后留空格位
mysql_client_interactive 允许设置断开连接之前所空闲等候的 interactive_timeout 时间(代替 wait_timeout)。
mysql_client_ssl 使用 ssl 加密。本标志仅在 mysql 客户端库版本为 4.x 或更高版本时可用。在 php 4 和 windows 版的 php 5 安装包中绑定的都是 3.23.x。
mysql_fetch_array() 函数使用一个常量来表示所返回数组的类型。下面是常量的定义:
表格 3. mysql fetch 常量
常量 描述
mysql_assoc 返回的数据列使用字段名作为数组的索引名。
mysql_both 返回的数据列使用字段名及数字索引作为数组的索引名。
mysql_num 返回的数据列使用数字索引作为数组的索引名。索引从 0 开始,表示返回结果的第一个字段。
注释
注: 大多数 mysql 函数都接受 link_identifier 作为最后一个可选参数。如果未提供此参数,则使用最后一个打开的连接。如果不存在连接,则会用 php.ini 中定义的默认参数去尝试建立连接。如果连接不成功,函数返回 false。
范例
下面的简单例子演示如何连接数据库,执行查询语句,打印返回结果集和断开数据库等一系列基本的 mysql 操作。 例子 1. mysql 例子
<?php
// 连接,选择数据库
$link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')
or die('could not connect: ' . mysql_error());
echo 'connected successfully';
mysql_select_db('my_database') or die('could not select database');
// 执行 sql 查询
$query = 'select * from my_table';
$result = mysql_query($query) or die('query failed: ' . mysql_error());
// 用 html 显示结果
echo "<table>\n";
while ($line = mysql_fetch_array($result, mysql_assoc)) {
echo "\t<tr>\n";
foreach ($line as $col_value) {
echo "\t\t<td>$col_value</td>\n";
}
echo "\t</tr>\n";
}
echo "</table>\n";
// 释放结果集
mysql_free_result($result);
// 关闭连接
mysql_close($link);
?>
目录
mysql_affected_rows -- 取得前一次 mysql 操作所影响的记录行数
mysql_change_user -- 改变活动连接中登录的用户
mysql_client_encoding -- 返回字符集的名称
mysql_close -- 关闭 mysql 连接
mysql_connect -- 打开一个到 mysql 服务器的连接
mysql_create_db -- 新建一个 mysql 数据库
mysql_data_seek -- 移动内部结果的指针
mysql_db_name -- 取得结果数据
mysql_db_query -- 发送一条 mysql 查询
mysql_drop_db -- 丢弃(删除)一个 mysql 数据库
mysql_errno -- 返回上一个 mysql 操作中的错误信息的数字编码
mysql_error -- 返回上一个 mysql 操作产生的文本错误信息
mysql_escape_string -- 转义一个字符串用于 mysql_query
mysql_fetch_array -- 从结果集中取得一行作为关联数组,或数字数组,或二者兼有
mysql_fetch_assoc -- 从结果集中取得一行作为关联数组
mysql_fetch_field -- 从结果集中取得列信息并作为对象返回
mysql_fetch_lengths -- 取得结果集中每个输出的长度
mysql_fetch_object -- 从结果集中取得一行作为对象
mysql_fetch_row -- 从结果集中取得一行作为枚举数组
mysql_field_flags -- 从结果中取得和指定字段关联的标志
mysql_field_len -- 返回指定字段的长度
mysql_field_name -- 取得结果中指定字段的字段名
mysql_field_seek -- 将结果集中的指针设定为制定的字段偏移量
mysql_field_table -- 取得指定字段所在的表名
mysql_field_type -- 取得结果集中指定字段的类型
mysql_free_result -- 释放结果内存
mysql_get_client_info -- 取得 mysql 客户端信息
mysql_get_host_info -- 取得 mysql 主机信息
mysql_get_proto_info -- 取得 mysql 协议信息
mysql_get_server_info -- 取得 mysql 服务器信息
mysql_info -- 取得最近一条查询的信息
mysql_insert_id -- 取得上一步 insert 操作产生的 id
mysql_list_dbs -- 列出 mysql 服务器中所有的数据库
mysql_list_fields -- 列出 mysql 结果中的字段
mysql_list_processes -- 列出 mysql 进程
mysql_list_tables -- 列出 mysql 数据库中的表
mysql_num_fields -- 取得结果集中字段的数目
mysql_num_rows -- 取得结果集中行的数目
mysql_pconnect -- 打开一个到 mysql 服务器的持久连接
mysql_ping -- ping 一个服务器连接,如果没有连接则重新连接
mysql_query -- 发送一条 mysql 查询
mysql_real_escape_string -- 转义 sql 语句中使用的字符串中的特殊字符,并考虑到连接的当前字符集
mysql_result -- 取得结果数据
mysql_select_db -- 选择 mysql 数据库
mysql_stat -- 取得当前系统状态
mysql_tablename -- 取得表名
mysql_thread_id -- 返回当前线程的 id
mysql_unbuffered_query -- 向 mysql 发送一条 sql 查询,并不获取和缓存结果的行
在 mysql 模块中使用了两种资源类型。第一种是数据库的连接句柄,第二种是 sql 查询返回的结果集。
预定义常量
以下常量由本扩展模块定义,因此只有在本扩展模块被编译到 php 中,或者在运行时被动态加载后才有效。
在 php 4.3.0 以后的版本中,允许在 mysql_connect() 函数和 mysql_pconnect() 函数中指定更多的客户端标记。下面列出所定义的常量:
表格 2. mysql 客户端常量
常量 描述
mysql_client_compress 使用压缩的通讯协议
mysql_client_ignore_space 允许在函数名后留空格位
mysql_client_interactive 允许设置断开连接之前所空闲等候的 interactive_timeout 时间(代替 wait_timeout)。
mysql_client_ssl 使用 ssl 加密。本标志仅在 mysql 客户端库版本为 4.x 或更高版本时可用。在 php 4 和 windows 版的 php 5 安装包中绑定的都是 3.23.x。
mysql_fetch_array() 函数使用一个常量来表示所返回数组的类型。下面是常量的定义:
表格 3. mysql fetch 常量
常量 描述
mysql_assoc 返回的数据列使用字段名作为数组的索引名。
mysql_both 返回的数据列使用字段名及数字索引作为数组的索引名。
mysql_num 返回的数据列使用数字索引作为数组的索引名。索引从 0 开始,表示返回结果的第一个字段。
注释
注: 大多数 mysql 函数都接受 link_identifier 作为最后一个可选参数。如果未提供此参数,则使用最后一个打开的连接。如果不存在连接,则会用 php.ini 中定义的默认参数去尝试建立连接。如果连接不成功,函数返回 false。
范例
下面的简单例子演示如何连接数据库,执行查询语句,打印返回结果集和断开数据库等一系列基本的 mysql 操作。 例子 1. mysql 例子
<?php
// 连接,选择数据库
$link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')
or die('could not connect: ' . mysql_error());
echo 'connected successfully';
mysql_select_db('my_database') or die('could not select database');
// 执行 sql 查询
$query = 'select * from my_table';
$result = mysql_query($query) or die('query failed: ' . mysql_error());
// 用 html 显示结果
echo "<table>\n";
while ($line = mysql_fetch_array($result, mysql_assoc)) {
echo "\t<tr>\n";
foreach ($line as $col_value) {
echo "\t\t<td>$col_value</td>\n";
}
echo "\t</tr>\n";
}
echo "</table>\n";
// 释放结果集
mysql_free_result($result);
// 关闭连接
mysql_close($link);
?>
目录
mysql_affected_rows -- 取得前一次 mysql 操作所影响的记录行数
mysql_change_user -- 改变活动连接中登录的用户
mysql_client_encoding -- 返回字符集的名称
mysql_close -- 关闭 mysql 连接
mysql_connect -- 打开一个到 mysql 服务器的连接
mysql_create_db -- 新建一个 mysql 数据库
mysql_data_seek -- 移动内部结果的指针
mysql_db_name -- 取得结果数据
mysql_db_query -- 发送一条 mysql 查询
mysql_drop_db -- 丢弃(删除)一个 mysql 数据库
mysql_errno -- 返回上一个 mysql 操作中的错误信息的数字编码
mysql_error -- 返回上一个 mysql 操作产生的文本错误信息
mysql_escape_string -- 转义一个字符串用于 mysql_query
mysql_fetch_array -- 从结果集中取得一行作为关联数组,或数字数组,或二者兼有
mysql_fetch_assoc -- 从结果集中取得一行作为关联数组
mysql_fetch_field -- 从结果集中取得列信息并作为对象返回
mysql_fetch_lengths -- 取得结果集中每个输出的长度
mysql_fetch_object -- 从结果集中取得一行作为对象
mysql_fetch_row -- 从结果集中取得一行作为枚举数组
mysql_field_flags -- 从结果中取得和指定字段关联的标志
mysql_field_len -- 返回指定字段的长度
mysql_field_name -- 取得结果中指定字段的字段名
mysql_field_seek -- 将结果集中的指针设定为制定的字段偏移量
mysql_field_table -- 取得指定字段所在的表名
mysql_field_type -- 取得结果集中指定字段的类型
mysql_free_result -- 释放结果内存
mysql_get_client_info -- 取得 mysql 客户端信息
mysql_get_host_info -- 取得 mysql 主机信息
mysql_get_proto_info -- 取得 mysql 协议信息
mysql_get_server_info -- 取得 mysql 服务器信息
mysql_info -- 取得最近一条查询的信息
mysql_insert_id -- 取得上一步 insert 操作产生的 id
mysql_list_dbs -- 列出 mysql 服务器中所有的数据库
mysql_list_fields -- 列出 mysql 结果中的字段
mysql_list_processes -- 列出 mysql 进程
mysql_list_tables -- 列出 mysql 数据库中的表
mysql_num_fields -- 取得结果集中字段的数目
mysql_num_rows -- 取得结果集中行的数目
mysql_pconnect -- 打开一个到 mysql 服务器的持久连接
mysql_ping -- ping 一个服务器连接,如果没有连接则重新连接
mysql_query -- 发送一条 mysql 查询
mysql_real_escape_string -- 转义 sql 语句中使用的字符串中的特殊字符,并考虑到连接的当前字符集
mysql_result -- 取得结果数据
mysql_select_db -- 选择 mysql 数据库
mysql_stat -- 取得当前系统状态
mysql_tablename -- 取得表名
mysql_thread_id -- 返回当前线程的 id
mysql_unbuffered_query -- 向 mysql 发送一条 sql 查询,并不获取和缓存结果的行
上一篇: xorm插入数据实例
下一篇: java基础第四篇之面向对象