Wie erhalte ich über SQL-Aggregatfunktionen die Anzahl der Zeilen, die von Hinzufügungen, Löschungen und Änderungen betroffen sind?
Die Möglichkeit, die Anzahl der zurückgegebenen oder von einer Abfrage betroffenen Zeilen zu berechnen, bevor weitere Maßnahmen ergriffen werden, ist normalerweise sehr nützlich. Diese Funktion ist besonders praktisch, wenn Sie Ergebnisse auf Seiten anzeigen oder generieren möchten Statistische Informationen Wie wird also die Funktion zur Ermittlung der Anzahl der betroffenen Zeilen implementiert?
1. Zählen Sie die Anzahl der verspäteten Ergebnisdatensätze über die SQL-Aggregatfunktion COUNT.
COUNT gibt die Anzahl der Zeilen einer Abfrage oder eines Teils zurück einer Abfrage, normalerweise dasselbe wie DINSTINCT, wenn es zusammen verwendet wird. Die Aggregatfunktion COUNT von SQL wird von einer Vielzahl von Datenbanken weitgehend unterstützt!
2. Geben Sie die Anzahl der betroffenen Zeilen über die PDOStatement->rowCount()-Methode zurück.
Erhalten durch PDOStatement->rowCount ()-Methode Wie viele Zeilen sind von UPDATE-, INSERT- oder DELECTE-Abfragen betroffen? Die Methode rowCount() ist in typischen PHP-Anwendungen nicht üblich, kann aber zählen, wie viele Zeilen nach dem Aufruf von PDOStatement->execute betroffen waren.
3. Anwendungsbeispiele
Statistik der Anzahl der Datensätze, die von der Abfrage über die SQL-Aggregatfunktion COUNT zurückgegeben werden. Der spezifische Code lautet wie folgt :
<form action="5.php" name="form1" method="post"> 查询关键字:<input type="text" name="username" id="nr"> <input type="submit" name="Submit" value="查询"> </form> <?php header("Content-Type:text/html; charset=utf-8"); //设置页面的编码格式 if(isset($_POST['Submit']) && $_POST['Submit']=="查询") { $dbms = "mysql"; // 数据库的类型 $dbName ="php_cn"; //使用的数据库名称 $user = "root"; //使用的数据库用户名 $pwd = "root"; //使用的数据库密码 $host = "localhost"; //使用的主机名称 $dsn = "$dbms:host=$host;dbname=$dbName"; try { $dbh = new PDO($dsn, $user, $pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "SELECT COUNT(*) FROM user WHERE username = :id";//需要执行的sql语句 $stmt = $dbh->prepare($sql);//准备查询语句 $stmt->bindParam(':id', $_POST['nr'], PDO::PARAM_STR); //执行查询语句,并返回结果集 $result = $stmt->execute(); echo 'There are',$stmt->fetchColumn(),'rows returned.'; }catch (PDOException $e){ echo 'PDO Exception Caught.'; echo 'Error with the database:<br>'; echo 'SQL Query:',$sql; echo 'Error:'.$e->getMessage(); } } ?>
Führen Sie diese Instanz aus, geben Sie den Namen der abzufragenden Datenbank in das Textfeld ein und klicken Sie auf die Schaltfläche „Abfrage“, um die Anzahl der Zeilen der abgefragten Ergebnisse anzuzeigen, wie unten gezeigt:
Hinweis:
Wenn Sie UPDATE- und DELETE-Anweisungen verwenden, müssen Sie jederzeit eine WHERE-Klausel hinzufügen Die Spalten in der Datenbank werden möglicherweise nicht alle Daten in der Tabelle aktualisiert oder gelöscht.
Das obige ist der detaillierte Inhalt vonWie erhalte ich die Anzahl der Zeilen, die von Hinzufügungen, Löschungen und Änderungen über SQL-Aggregatfunktionen betroffen sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!