[英]Any value of separating a MySQL query into $query and $result?
我总是看到这样的MySQL查询结构,即使使用最简单的查询也是如此:
$query = "SELECT * FROM table_name WHERE id = '1'";
$result = mysql_query($query);
通过简单的单行查询进行上述操作是否有任何价值,时间或其他方式?
$result = mysql_query("SELECT * FROM table_name WHERE id = '1'";
我一直使用前者,因为当我开始使用PHP时,我认为最好是简单地复制其他所有人,但是由于我正在开发一个相当大的(相对于我的其他工作)应用程序,因此我可以削减大量数量,如果真的没有区别的话。
对于第一种方法,如果发生错误,更容易记录SQL(并且更容易发现错字,例如缺少括号)。
通常,我喜欢将它们分开,因为我可以轻松地print $query;
当我试图弄清楚为什么我的查询不起作用时。 这主要是个人喜好问题。
实际上,除了一件事之外,没有任何区别。 如果将查询放在单独的变量中,则可以重复使用该变量。 如果查询中发生任何更改,您只需要在变量中编辑查询
您始终可以创建一个自定义函数来接受查询并运行它,并传递其他可选参数,以防您想返回查询或记录查询以跟踪任何问题等。
通过简单的单行查询进行上述操作是否有任何价值,时间或其他方式?
当然,正如MSpreij所说,如果出现错误,您可以检查查询。
我总是看到这样的MySQL查询结构,即使使用最简单的查询也是如此:
$query = "SELECT * FROM table_name WHERE id = '1'";
$result = mysql_query($query) or trigger_error(mysql_error()." ".$query);
这个简单的构造将为您节省大量的stackoverflow“这意味着mysql_fetch_array(): supplied argument is not a valid MySQL result
”
注意其他部分。 这称为编程 。
如果出现错误,它将自动打印查询以及mysql错误消息。 或使用适当的设置将其记录到活动服务器中的错误日志中。
不写print $query;
手动。
但是,这两种方法都很丑陋。
这是丑陋的,难以维护的,肿的和重复的。
应该开发一个库 ,一种使通话更智能,减少重复的功能
$data = mydb_get_row("SELECT * FROM table_name WHERE id = 1");
内部有所有处理。 错误处理,查询日志记录,参数检查和api函数调用。
但是,作为一个真正的单一公司,而不是您想要实现的愚蠢的公司。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.