MySQL相关说明_php基础_脚本之家

MySQL 函数的行为受到 php.ini 中设置的影响。

资源类型
在MySQL模块中使用了两种资源类型。第一种是数据库的连接句柄,第二种是SQL查询返回的结果集。
预定义常量
以下常量由本扩展模块定义,因此只有在本扩展模块被编译到PHP中,或者在运行时被动态加载后才有效。
在PHP4.3.0以后的版本中,允许在mysql_connect函数中指定更多的客户端标记。下面列出所定义的常量:
表格2.MySQL客户端常量 常量描述 MYSQL_CLIENT_COMPRESS使用压缩的通讯协议
MYSQL_CLIENT_IGNORE_SPACE允许在函数名后留空格位
MYSQL_CLIENT_INTERACTIVE允许设置断开连接之前所空闲等候的interactive_timeout时间。
MYSQL_CLIENT_SSL使用SSL加密。本标志仅在MySQL客户端库版本为4.x或更高版本时可用。在PHP4和Windows版的PHP5安装包中绑定的都是3.23.x。
mysql_fetch_array()函数使用一个常量来表示所返回数组的类型。下面是常量的定义:
表格3.MySQLfetch常量 常量描述
MYSQL_ASSOC返回的数据列使用字段名作为数组的索引名。
MYSQL_BOTH返回的数据列使用字段名及数字索引作为数组的索引名。
MYSQL_NUM返回的数据列使用数字索引作为数组的索引名。索引从0开始,表示返回结果的第一个字段。
注释
注:大多数MySQL函数都接受link_identifier作为最后一个可选参数。如果未提供此参数,则使用最后一个打开的连接。如果不存在连接,则会用php.ini中定义的默认参数去尝试建立连接。如果连接不成功,函数返回FALSE。
范例
下面的简单例子演示如何连接数据库,执行查询语句,打印返回结果集和断开数据库等一系列基本的MySQL操作。例子1.MySQL例子
n”; while($line=mysql_fetch_array{ echo”t

MySQL 配置选项:

n”; foreach{ echo”tt

名称 默认 描述 可更改
mysql.allow_persistent "1" 是否允许 MySQL 的持久连接。 PHP_INI_SYSTEM
mysql.max_persistent "-1" 每个进程中最大的持久连接数目。 PHP_INI_SYSTEM
mysql.max_links "-1" 每个进程中最大的连接数,包括持久连接。 PHP_INI_SYSTEM
mysql.trace_mode "0" 跟踪模式。从 PHP 4.3.0 起可用。 PHP_INI_ALL
mysql.default_port NULL 指定默认连接数据库的 TCP 端口号。 PHP_INI_ALL
mysql.default_socket NULL 默认的 socket 名称。PHP 4.0.1起可用。 PHP_INI_ALL
mysql.default_host NULL 默认的服务器地址。不适用于SQL安全模式。 PHP_INI_ALL
mysql.default_user NULL 默认使用的用户名。不适用于SQL安全模式。 PHP_INI_ALL
mysql.default_password NULL 默认使用的密码。不适用于SQL安全模式。 PHP_INI_ALL
mysql.connect_timeout "60" 连接超时秒数。 PHP_INI_ALL

$col_value

PHP MySQL 函数

PHP:指示支持该函数的最早的
PHP 版本。

函数 描述 PHP
mysql_affected_rows() 取得前一次 MySQL 操作所影响的记录行数。 3
mysql_change_user() 不赞成。改变活动连接中登录的用户 3
mysql_client_encoding() 返回当前连接的字符集的名称 4
mysql_close() 关闭非持久的 MySQL 连接。 3
mysql_connect() 打开非持久的 MySQL 连接。 3
mysql_create_db() 不赞成。新建 MySQL 数据库。使用 mysql_query() 代替。 3
mysql_data_seek() 移动记录指针。 3
mysql_db_name() 从对 mysql_list_dbs() 的调用返回数据库名称。 3
mysql_db_query()

不赞成。发送一条 MySQL 查询。

使用 mysql_select_db() 和 mysql_query() 代替。

3
mysql_drop_db()

不赞成。丢弃(删除)一个 MySQL 数据库。

使用 mysql_query() 代替。

3
mysql_errno() 返回上一个 MySQL 操作中的错误信息的数字编码。 3
mysql_error() 返回上一个 MySQL 操作产生的文本错误信息。 3
mysql_escape_string()

不赞成。转义一个字符串用于 mysql_query。

使用 mysql_real_escape_string() 代替。

4
mysql_fetch_array() 从结果集中取得一行作为关联数组,或数字数组,或二者兼有。 3
mysql_fetch_assoc() 从结果集中取得一行作为关联数组。 4
mysql_fetch_field() 从结果集中取得列信息并作为对象返回。 3
mysql_fetch_lengths() 取得结果集中每个字段的内容的长度。 3
mysql_fetch_object() 从结果集中取得一行作为对象。 3
mysql_fetch_row() 从结果集中取得一行作为数字数组。 3
mysql_field_flags() 从结果中取得和指定字段关联的标志。 3
mysql_field_len() 返回指定字段的长度。 3
mysql_field_name() 取得结果中指定字段的字段名。 3
mysql_field_seek() 将结果集中的指针设定为指定的字段偏移量。 3
mysql_field_table() 取得指定字段所在的表名。 3
mysql_field_type() 取得结果集中指定字段的类型。 3
mysql_free_result() 释放结果内存。 3
mysql_get_client_info() 取得 MySQL 客户端信息。 4
mysql_get_host_info() 取得 MySQL 主机信息。 4
mysql_get_proto_info() 取得 MySQL 协议信息。 4
mysql_get_server_info() 取得 MySQL 服务器信息。 4
mysql_info() 取得最近一条查询的信息。 4
mysql_insert_id() 取得上一步 INSERT 操作产生的 ID。 3
mysql_list_dbs() 列出 MySQL 服务器中所有的数据库。 3
mysql_list_fields()

不赞成。列出 MySQL 结果中的字段。

使用 mysql_query() 代替。

3
mysql_list_processes() 列出 MySQL 进程。 4
mysql_list_tables()

不赞成。列出 MySQL 数据库中的表。

使用Use mysql_query() 代替。

3
mysql_num_fields() 取得结果集中字段的数目。 3
mysql_num_rows() 取得结果集中行的数目。 3
mysql_pconnect() 打开一个到 MySQL 服务器的持久连接。 3
mysql_ping() Ping 一个服务器连接,如果没有连接则重新连接。 4
mysql_query() 发送一条 MySQL 查询。 3
mysql_real_escape_string() 转义 SQL 语句中使用的字符串中的特殊字符。 4
mysql_result() 取得结果数据。 3
mysql_select_db() 选择 MySQL 数据库。 3
mysql_stat() 取得当前系统状态。 4
mysql_tablename() 不赞成。取得表名。使用 mysql_query() 代替。 3
mysql_thread_id() 返回当前线程的 ID。 4
mysql_unbuffered_query() 向 MySQL 发送一条 SQL 查询(不获取 / 缓存结果)。 4

n”; } echo”t

PHP MySQL 常量

在 PHP 4.3.0 以后的版本中,允许在 mysql_connect() 函数和
mysql_pconnect() 函数中指定更多的客户端标记:

PHP:指示支持该常量的最早的
PHP 版本。

常量 描述 PHP
MYSQL_CLIENT_COMPRESS 使用压缩的通讯协议。 4.3
MYSQL_CLIENT_IGNORE_SPACE 允许在函数名后留空格位。 4.3
MYSQL_CLIENT_INTERACTIVE 在关闭连接前所允许的交互超时非活动时间。 4.3
MYSQL_CLIENT_SSL 使用 SSL 加密(仅在 MySQL 客户端库版本为 4+ 时可用)。 4.3

mysql_fetch_array() 函数使用一个常量来表示所返回数组的类型:

常量 描述 PHP
MYSQL_ASSOC 返回的数据列使用字段名作为数组的索引名。  
MYSQL_BOTH 返回的数据列使用字段名及数字索引作为数组的索引名。  
MYSQL_NUM

返回的数据列使用数字索引作为数组的索引名。

索引从 0 开始,表示返回结果的第一个字段。

 

n”; } echo”n”; //释放结果集 mysql_free_result; //关闭连接
mysql_close; ?> 目录
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查询,并不获取和缓存结果的行

发表评论

电子邮件地址不会被公开。 必填项已用*标注