gpt4 book ai didi

php - MySQL需要单独创建索引吗?

转载 作者:太空宇宙 更新时间:2023-11-03 10:28:13 26 4
gpt4 key购买 nike

我在使用 MySQL 数据库时遇到了一些问题。实际上,当我在我的本地主机上进行测试时它很快..但是当我上传到公共(public)服务器时它很慢。数据正在显示,但比平时花费更多时间。有 7 个表格可以打开以阅读单个页面。所以我所做的是为第一个表添加用户名和密码。对于最后一个表,我使用 mysql_close($db); 命令关闭数据库。

这是正确的做法吗?我在数据库方面没有太多经验。我使用了简单的方法来调用数据。

$db = mysql_connect("localhost", "username", "password") or die("Could not connect.");
mysql_select_db("database",$db)or die(mysql_error());
$result = mysql_query("SELECT * FROM table WHERE web='$data'")or die(mysql_error());
$row = mysql_fetch_array($result);
$daysA = $row['regtime'];
$days = (strtotime(date("Y-m-d")) - strtotime($row['regtime'])) / (60 * 60 * 24);
if($row > 0 && $days < 7){
$data = $row['data'];
$data1 = $row['data1'];
$data2 = $row['data2'];
$data3 = $row['data3'];
$data4 = $row['data4'];
}else{

//some function to fill database }

然后在第 7 个表的末尾我添加了数据库关闭 mysql_close($db);

请帮忙

最佳答案

不确定我是否完全理解您的问题,但这里有两条考虑 SQL 查询的一般建议:

  • 当在条件(即where 子句)中使用列时,在其上放置索引通常是个好主意:它通常允许 MySQL 查找无需扫描整个表即可匹配 where 子句的行。
  • 如果您使用 7 个查询,您是否无法减少查询的数量?
    • 解决方案通常是在表之间使用一些连接。
    • 另一个可能是添加一些缓存机制


以下是您可能感兴趣的 MySQL 手册的几个部分:


作为旁注:确保在将 $data 注入(inject) SQL 查询之前正确转义,以避免 SQL Injections ;-)

关于php - MySQL需要单独创建索引吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3084048/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com