PHP操作MySQL数据库详解(一)
1. PHP连接MySQL服务器
mysql_connect()
基本语法
描述:PHP连接MySQL服务器
语法:resource $link = mysql_connect($hostname, $username, $password)
参数:
$hostname:是MySQL服务器的域名或IP地址,也可以加端口号(3306)。如:localhost:3306
$username:是MySQL服务器的用户名。如:root
$password:是MySQL服务器的用户密码。
返回值:如果执行成功,返回一个资源标识符。如果执行失败,返回FALSE
具体操作
<?php ini_set(display_errors, 1); //设置错误为:显示 //0.数据库配置信息 $db_host = 'loca1lhost'; $db_user = 'root'; $db_pwd = 'yeoman'; //1.PHP连接MySQL服务器 $link = @mysql_connect($db_host, $db_user, $db_pwd); //@用于屏蔽系统错误 //如果连接失败,则输出错误信息,并中止程序运行 if(!$link){ echo "PHP连接MySQL失败!".mysql_error(); exit(); //中止程序继续向下运行 } ?>
如果MySQL服务器连接失败,而且mysql_connect()前未加@符,则会报系统错误,可以看到下面的报错信息,包含用户的许多信息,安全性不好。利用@符就可以屏蔽该系统错误,提高安全性。
Warning: mysql_connect() [<a href='function.mysql-connect'>function.mysql-connect</a>]: Unknown MySQL server host 'local1host' (0) in /Applications/MAMP/htdocs/php_test/php_mysql.php on line 17
其他函数及符号
exit()
描述:输出一个提示信息,并中止脚本继续向下运行。
语法:void exit([$msg])
参数:$msg是可选项。如果省略,只中止脚本运行。
举例:exit(“PHP连接出错了”)
mysql_error()
描述:返回上一次MySQL执行失败时的文本错误信息。
语法:mysql_error()
屏蔽系统错误@
描述:@可以屏蔽各种函数调用错误,或包含文件错误,但是不能用在函数定义或类定义之前。
2. 选择MySQL数据库
mysql_select_db()
语法
描述:选择当前要操作的数据库
语法:bool mysql_select_db ( string $database_name [, resource $link ] )
参数:
$database_name:指定要选择的数据库名称。
$link:可选项。指定当前的活动连接。如果省略,就以上一次打开的活动连接。
返回值:如果选择数据库成功,则返回TRUE。如果选择数据库失败,则返回FALSE。
操作
<?php //0.数据库配置信息 $db_name = 'yeoman92'; //2.选择当前数据库 if(!mysql_select_db($db_name, $link)){ echo "选择数据库{$db_name}失败!".mysql_error(); exit(); } ?>
3. 设置MySQL返回的数据字符集
向MySQL服务器发送请求或返回请求结果的数据字符集。
//3.设置MySQL返回的数据字符集 mysql_query(“set names utf8”);
4. 执行MySQL语句
mysql_query()
语法
描述:发送一条 MySQL 查询。
语法:resource mysql_query ( string $query [, resource $link] )
参数:
增加记录:$query = “INSERT INTO news(title,content) VALUES(‘标题’ , ‘内容’)”
删除记录:$query = “DELETE FROM news WHERE id=10”
修改记录:$query = “UPDATE news SET title = ‘新标题’ , content = ‘新内容’ WHERE id=80”
查询记录:$query = “SELECT * FROM news WHERE id<100”
$query:指要发送的SQL语句。
$link:可选项。指上一次打开的活动连接。
返回值:
结果集也是一个资源标识符,是到MySQL数据的一个引用地址。
如果执行SELECT、SHOW、DESCRIBE命令,成功时返回结果集,失败时返回FALSE。
如果执行其它的SQL语句,执行成功返回TRUE,执行失败返回FALSE。
举例:
$result = mysql_query(“SELECT * FROM news WHERE id<100”)
$result = mysql_query(“DELETE * FROM news WHERE id=100”)
操作
//4.执行SQL查询:向MySQL服务器发出查询的请求$ sql = 'SELECT * FROM 007_news WHERE id<100'; $result = mysql_query($sql, $link);
5. 从结果集中取出一行数据
1. mysql_fetch_row()
语法
描述:从结果集中取得一行作为枚举数组。
语法:array mysql_fetch_row ( resource $result )
参数:$result是结果集变量。
返回值:返回一个枚举数组,也就是从0开始的正整数下标。这里的下标,是与表的字段下标是对应的。
举例:$arr = mysql_fetch_row($result)
操作
//5.取出一条记录作为枚举数组返回 $arr = mysql_fetch_row($result);echo "<pre class="brush:php;toolbar:false">"; print_r($arr);echo "";
执行结果
Array( [0] => 17 [1] => 1 [2] => cctv中学生信息化教学实验基地共建工程在京启动 [3] => admin [4] => 中小学课外辅导网 [5] => [6] => [7] => 50 [8] => [9] => 52 [10] => 1339340691)
2. mysql_fetch_array()
描述:从结果集中取出一行,作为混合数组返回。
语法:array mysql_fetch_array ( resource $result [, int $result_type ] )
参数:
MYSQL_BOTH:默认的。也就是两种下标都存在。
MYSQL_ASSOC:只有字符下标的数组。相当于mysql_fetch_assoc()的功能。
MYSQL_NUM:只有整数下标的数组。相当于mysql_fetch_row()的功能。
以上三个参数是常量,系统常量必须全大写。
$result:是指结果集变量。
$result_type:是指返回的数组的类型。取值:MYSQL_BOTH、MYSQL_ASSOC、MYSQL_NUM
返回值:返回一个数组,至于是什么数组,取决于第二个参数。
举例:
$arr = mysql_fetch_array($result) //混合数组
$arr = mysql_fetch_array($result , MYSQL_ASSOC ) //关联数组
$arr = mysql_fetch_array($result , MYSQL_NUM) //枚举数组
3. mysql_fetch_assoc()
描述:从结果集中取一行,以关联数组返回。
语法:array mysql_fetch_assoc(resource $result)
举例:$arr = mysql_fetch_assoc($result)
附:完整PHP代码
<?php ini_set(display_errors, 1); //设置错误为:显示 //0.数据库配置信息 $db_host = 'localhost'; $db_user = 'root'; $db_pwd = 'yeoman'; $db_name = 'yeoman92'; //1.PHP连接MySQL服务器 $link = @mysql_connect($db_host, $db_user, $db_pwd); //@用于屏蔽系统错误 //如果连接失败,则输出错误信息,并中止程序运行 if(!$link){ echo "PHP连接MySQL失败!".mysql_error(); exit(); //中止程序继续向下运行 } //2.选择当前数据库 if(!mysql_select_db($db_name, $link)){ echo "选择数据库{$db_name}失败!".mysql_error(); exit(); } //3.设置MySQL返回的数据字符集 mysql_query("set names utf8"); //4.执行SQL查询:向MySQL服务器发出查询的请求 $sql = 'SELECT * FROM 007_news WHERE id<100'; $result = mysql_query($sql, $link); //5.取出一条记录作为枚举数组返回 $arr = mysql_fetch_row($result); echo "<pre class="brush:php;toolbar:false">"; print_r($arr); echo ""; ?>
以上是PHP操作MySQL数据库详解(一)的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

MySQL和phpMyAdmin可以通过以下步骤进行有效管理:1.创建和删除数据库:在phpMyAdmin中点击几下即可完成。2.管理表:可以创建表、修改结构、添加索引。3.数据操作:支持插入、更新、删除数据和执行SQL查询。4.导入导出数据:支持SQL、CSV、XML等格式。5.优化和监控:使用OPTIMIZETABLE命令优化表,并利用查询分析器和监控工具解决性能问题。

session_start()iscucialinphpformanagingusersessions.1)ItInitiateSanewsessionifnoneexists,2)resumesanexistingsessions,and3)setsasesessionCookieforContinuityActinuityAccontinuityAcconActInityAcconActInityAcconAccRequests,EnablingApplicationsApplicationsLikeUseAppericationLikeUseAthenticationalticationaltication and PersersonalizedContentent。

在MySQL中,添加字段使用ALTERTABLEtable_nameADDCOLUMNnew_columnVARCHAR(255)AFTERexisting_column,删除字段使用ALTERTABLEtable_nameDROPCOLUMNcolumn_to_drop。添加字段时,需指定位置以优化查询性能和数据结构;删除字段前需确认操作不可逆;使用在线DDL、备份数据、测试环境和低负载时间段修改表结构是性能优化和最佳实践。

在macOS上安装MySQL可以通过以下步骤实现:1.安装Homebrew,使用命令/bin/bash-c"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"。2.更新Homebrew,使用brewupdate。3.安装MySQL,使用brewinstallmysql。4.启动MySQL服务,使用brewservicesstartmysql。安装后,可通过mysql-u

MySQL函数可用于数据处理和计算。1.基本用法包括字符串处理、日期计算和数学运算。2.高级用法涉及结合多个函数实现复杂操作。3.性能优化需避免在WHERE子句中使用函数,并使用GROUPBY和临时表。

要安全、彻底地卸载MySQL并清理所有残留文件,需遵循以下步骤:1.停止MySQL服务;2.卸载MySQL软件包;3.清理配置文件和数据目录;4.验证卸载是否彻底。

MySQL批量插入数据的高效方法包括:1.使用INSERTINTO...VALUES语法,2.利用LOADDATAINFILE命令,3.使用事务处理,4.调整批量大小,5.禁用索引,6.使用INSERTIGNORE或INSERT...ONDUPLICATEKEYUPDATE,这些方法能显着提升数据库操作效率。

Composer是PHP的依赖管理工具,通过composer.json文件管理项目依赖。1)解析composer.json获取依赖信息;2)解析依赖关系形成依赖树;3)从Packagist下载并安装依赖到vendor目录;4)生成composer.lock文件锁定依赖版本,确保团队一致性和项目可维护性。
