如何连接MySQL数据库中的某个表?
我试过:
mysql_select_db("baybeestore",$connection)
但它给了我一个错误:-
"错误:表'baybeestore.form'不存在"
但是我创建了一个名为order
的表。在具有多个数据库的同一数据库中,是否有任何PHP代码可以连接到我的表order
?
创建多个数据库是否足够明智;一个网站一张桌子还是多表一数据库?
完整代码:
$connection=mysql_connect("localhost"、"user"、"1234");if(!$connection){die('连接MySQL失败:'.MySQL_error());}mysql_select_db("baybeestore",$connection)$sql="插入表格(姓名、地址、电子邮件、手机、物品、付款)值('$strname'、'$stradress'、'$stremail'、'$Strhandhone'、'[strtem'、'%strpayment')";if(!mysql_query($sql,$connection)){die('错误:'.mysql_Error());}echo"数据已保存。";mysql_close($connection)
根据您编辑/添加的代码您最初发布的代码
您正在使用两个不同的表进行查询。结果:错误
你有SELECT * FROM order
和INSERT INTO form
两种不同的动物。
如果有什么不同的话,那应该是INSERT INTO order
或SELECT * FROM form
。。。ORDER
是一个保留字,应该用反引号括起来。
即:
INSERT INTO `order`
- http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
这是一个非常令人困惑的问题。mysql_select_db("baybeestore",$connection);
与表名无关,所以您的错误一定来自其他地方。此外,错误指的是表form
,但您说您已经创建了一个名为order
的表。
回答您的问题:
-
您不连接到表;您可以连接到数据库并对表运行查询。连接到
my_database
或其他什么,然后运行类似SELECT * FROM my_table
的查询。 -
一个数据库,多个表——肯定而不是多个数据库,这要复杂得多,会产生大量开销,而且毫无帮助。
也许你混淆了事情。您应该连接到一个数据库,然后对该数据库中的一个或多个表运行查询。
因此,如果您有数据库My_Database
和表table1
、table2
,则可以运行
mysqli_select_db($connection, "My_Database");
然后运行类似的查询
$result = mysqli_query("SELECT * FROM table1 WHERE 1 LIMIT 1");
请注意,我已将函数名称更改为mysqli_*
,因为mysql_*
函数已弃用,不应再使用
既然您正在学习,我建议您以正确的方式开始学习。不要使用mysql函数。尝试学习PDO。此外,每个应用程序使用一个数据库。
要连接,您可以尝试:
try {
$conn = new PDO('mysql:host=localhost;dbname=myDatabase', $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
您可以通过以下链接了解更多关于PDO的信息