首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP: mysql_query及其连接说明

PHP: mysql_query及其连接说明
EN

Stack Overflow用户
提问于 2012-04-29 22:20:20
回答 4查看 6.1K关注 0票数 3

我最近开始学习PHP,并发现连接到数据库的常见方法是:

代码语言:javascript
复制
// create connection to database
$connection = mysql_connect("localhost", "root", "password")
// Select database
$db_select = mysql_select_db("myDB", $connection);
// and finally the query..
$result = mysql_query("SELECT * FROM table", $connection);

现在我的问题是,为什么我们必须在第三步中使用$connection ?!因为我们使用的是"myDB“数据库,所以我希望以这种方式编写第三步:

代码语言:javascript
复制
// and finally the query..
$result = mysql_query("SELECT * FROM table", $db_select);

但似乎在php中不是这样做的。有人能解释一下为什么吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-04-29 23:59:52

该连接表示数据库服务器会话,该会话为您维护数据库状态。当前选定的数据库只是会话状态的一部分,因此通过传递连接,您也隐式地传递了当前选定的数据库(以及各种其他必要信息)。换句话说,连接比所选的数据库更通用。

(正如其他人已经注意到的,当您的程序只需要访问单个服务器上的单个数据库时,没有必要显式传递连接。默认情况下,MySQL将使用最近连接的会话。)

票数 3
EN

Stack Overflow用户

发布于 2012-04-29 23:06:03

这不是必需的。然而,它是非常有用的。如果连接到同一页上的多个数据库,则可能需要同时使用这两个数据库。但是,如果您不指定哪个连接,它将只使用您成功连接到的最后一个连接。

代码语言:javascript
复制
<?php
$forum = mysql_connect(...);
$users = mysql_connect(...);

$me = mysql_query("", $users);
$last_forum_post = mysql_query("", $forum);
?>

然而,如果你只有一个连接,那么你不需要把它放进去。

票数 2
EN

Stack Overflow用户

发布于 2012-04-29 22:38:51

函数描述

代码语言:javascript
复制
mysql_query ( string $query [, resource $link_identifier ] )

mysql_query()->将查询发送到数据库(针对与指定链接标识符关联的服务器上的当前活动数据库)。

参数

SQL query.

  • link_identifier ->的连接标识符查询如果未指定连接标识符,则假定使用mysql_connect ()打开的最后一个链接。如果找不到这样的链接,它将尝试创建一个链接,就好像调用mysql_connect ()时没有参数一样。如果未找到或未建立连接,则会生成错误级别为E_WARNING的确认。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10372820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档