我有这个查询,如果它返回成功,我想要另一个函数来处理,如果没有,不要处理该函数。
以下是运行查询的代码
global $DB;
$DB->query("UPDATE exp_members SET group_id = '$group_id' WHERE member_id = '$member_id'");
我想它就像......
if($DB) {
//success
} else {
//failure
}
答案 0 :(得分:29)
这是您可以测试的最简单方法
$query = $DB->query("UPDATE exp_members SET group_id = '$group_id' WHERE member_id = '$member_id'");
if($query) // will return true if succefull else it will return false
{
// code here
}
答案 1 :(得分:8)
据我所知,通过说“成功”,您想知道是否有任何行已更新。您可以使用此功能进行检查。
如果您使用PDO - > http://www.php.net/manual/en/pdostatement.rowcount.php
答案 2 :(得分:2)
global $DB;
$status = $DB->query("UPDATE exp_members SET group_id = '$group_id' WHERE member_id = '$member_id'");
if($status == false)
{
die("Didn't Update");
}
如果您在后端使用mysql_query
($DB->query()
用于查询数据库),它将为TRUE
返回FALSE
或INSERT
,UPDATE
和DELETE
(以及其他一些)命令,基于其状态。
答案 3 :(得分:2)
if ($DB->rowCount() > 0)
{/* Update worked because query affected X amount of rows. */}
else
{$error = $DB->errorInfo();}
答案 4 :(得分:2)
如果值为0则表示不成功,但如果为1则成功。
$this->db->affected_rows();
答案 5 :(得分:0)
if ($DB->query(...)) { success }
else { failure }
查询应该在失败时返回false(如果您使用的是mysql_query或$ mysqli->查询)。如果你想测试UPDATE查询是否真的做了什么(这与“成功”完全不同),那么使用mysql_affected_rows或$ mysqli-> affected_rows
答案 6 :(得分:0)
这证明了我在插入或更新时测试失败的最安全的机制:
<jboss-deployment-structure>
<sub-deployment name="campaigner-service.jar">
<dependencies>
<module name="com.dr_dee_sw.campaigner" />
</dependencies>
</sub-deployment>
</jboss-deployment-structure>
答案 7 :(得分:0)
如果您没有使用->
格式,则可以执行此操作:
$a = "SQL command...";
if ($b = mysqli_query($con,$a)) {
// results was successful
} else {
// result was not successful
}
答案 8 :(得分:0)
检查:
lazy var fetchResultController: NSFetchedResultsController<Book> = {
let fetchRequest: NSFetchRequest<Book> = Book.fetchRequest()
fetchRequest.sortDescriptors = [NSSortDescriptor(key: #keyPath(Book.name), ascending: false)]
let fetchResultController = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: self.persistentContainer.managedContext, sectionNameKeyPath: #keyPath(Book.category.name), cacheName: nil)
fetchResultController.delegate = self
return fetchResultController
}()
答案 9 :(得分:0)
您可以使用它来检查查询是否有任何结果($结果):
if (mysqli_num_rows($result) != 0)
{
//results found
} else {
// results not found
}
答案 10 :(得分:0)