Directory articoli
- 1 Dati di query MySQL
- 2 Ottieni dati tramite prompt dei comandi
- 3 Leggi la scheda tecnica:
- 4 Usa lo script PHP per ottenere i dati
- 5 Utilizzare il parametro mysqli_fetch_array MYSQL_ASSOC per recuperare i dati:
- 6
- 7 Usa mysqli_fetch_assoc per recuperare i dati:
- 8 Utilizzare il parametro mysqli_fetch_array MYSQL_NUM per recuperare i dati:
- 9 rilascio di memoria
- 10 Memoria libera con mysqli_free_result:
Database MySQLCome interrogare i dati nella tabella?Istruzione/comando/sintassi di query
MySQL Interroga i dati
I database MySQL utilizzano le istruzioni SQL SELECT per interrogare i dati.
È possibile eseguire query sui dati nel database tramite la finestra del prompt dei comandi mysql> o tramite uno script PHP.
grammatica
Quella che segue è la sintassi generale SELECT per interrogare i dati in un database MySQL:
SELECT column_name,column_name FROM table_name [WHERE Clause] [OFFSET M ][LIMIT N]
- Nell'istruzione della query è possibile utilizzare una o più tabelle, separare le tabelle con virgole (,) e utilizzare l'istruzione WHERE per impostare le condizioni della query.
- Il comando SELECT può leggere uno o più record.
- È possibile utilizzare un asterisco (*) per sostituire altri campi, l'istruzione SELECT restituirà tutti i dati dei campi della tabella
- È possibile utilizzare l'istruzione WHERE per includere qualsiasi condizione.
- È possibile specificare l'offset di dati in corrispondenza del quale l'istruzione SELECT avvia la query con OFFSET.Di default l'offset è 0.
- È possibile utilizzare la proprietà LIMIT per impostare il numero di record restituiti.
Ottieni dati tramite prompt dei comandi
Nell'esempio seguente, utilizzeremo il comando SQL SELECT per ottenere i dati della tabella dati MySQL chenweiliang_tbl:
Esempio
L'esempio seguente restituirà tutti i record della tabella di dati chenweiliang_tbl:
Leggi la scheda tecnica:
select * from chenweiliang_tbl;
Usa lo script PHP per ottenere i dati
usando le funzioni PHP mysqli_query() E SELEZIONA SQL comando per ottenere i dati.
Questa funzione viene utilizzata per eseguire comandi SQL e quindi passare le funzioni PHP mysqli_fetch_array() per utilizzare o generare dati per tutte le query.
mysqli_fetch_array() La funzione recupera una riga dal set di risultati come matrice associativa o una matrice di numeri o entrambi Restituisce una matrice generata dalle righe recuperate dal set di risultati o false se non ci sono più righe.
L'esempio seguente legge tutti i record dalla tabella di dati chenweiliang_tbl.
Esempio
Prova l'esempio seguente per visualizzare tutti i record della tabella di dati chenweiliang_tbl.
Utilizzare il parametro mysqli_fetch_array MYSQL_ASSOC per recuperare i dati:
<? php $dbhost = 'localhost:3306'; // mysql服务器主机地址 $dbuser = 'root'; // mysql用户名 $dbpass = '123456'; // mysql用户名密码 $conn = mysqli_connect($dbhost, $dbuser, $dbpass); if(! $conn ) { die('连接失败: ' . mysqli_error($conn)); } // 设置编码,防止中文乱码 mysqli_query($conn , "set names utf8"); $sql = 'SELECT chenweiliang_id, chenweiliang_title, chenweiliang_author, submission_date FROM chenweiliang_tbl'; mysqli_select_db( $conn, 'chenweiliang' ); $retval = mysqli_query( $conn, $sql ); if(! $retval ) { die('无法读取数据: ' . mysqli_error($conn)); } echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>'; echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>'; while($row = mysqli_fetch_array($retval, MYSQL_ASSOC)) { echo "<tr><td> {$row['chenweiliang_id']}</td> ". "<td>{$row['chenweiliang_title']} </td> ". "<td>{$row['chenweiliang_author']} </td> ". "<td>{$row['submission_date']} </td> ". "</tr>"; } echo '</table>'; mysqli_close($conn); ?>
Nell'esempio precedente, ogni riga di record letti viene assegnata alla variabile $riga, quindi ogni valore viene stampato.
Nota:Ricorda che se devi usare una variabile in una stringa, metti la variabile tra parentesi graffe.
Nell'esempio sopra, il secondo parametro della funzione PHP mysqli_fetch_array() è MySQL_ASSOC, impostare questo parametro per interrogare il risultato per restituire un array associativo, è possibile utilizzare il nome del campo come indice dell'array.
PHP fornisce un'altra funzione mysqli_fetch_assoc(), la funzione prende una riga dal set di risultati come matrice associativa.Restituisce un array associativo generato dalle righe prelevate dal set di risultati o false se non ci sono più righe.
Esempio
Prova il seguente esempio, che usa mysqli_fetch_assoc() funzione per emettere tutti i record della tabella dati chenweiliang_tbl:
Usa mysqli_fetch_assoc per recuperare i dati:
<? php $dbhost = 'localhost:3306'; // mysql服务器主机地址 $dbuser = 'root'; // mysql用户名 $dbpass = '123456'; // mysql用户名密码 $conn = mysqli_connect($dbhost, $dbuser, $dbpass); if(! $conn ) { die('连接失败: ' . mysqli_error($conn)); } // 设置编码,防止中文乱码 mysqli_query($conn , "set names utf8"); $sql = 'SELECT chenweiliang_id, chenweiliang_title, chenweiliang_author, submission_date FROM chenweiliang_tbl'; mysqli_select_db( $conn, 'chenweiliang' ); $retval = mysqli_query( $conn, $sql ); if(! $retval ) { die('无法读取数据: ' . mysqli_error($conn)); } echo '<h2>陈沩亮博客 mysqli_fetch_assoc 测试<h2>'; echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>'; while($row = mysqli_fetch_assoc($retval)) { echo "<tr><td> {$row['chenweiliang_id']}</td> ". "<td>{$row['chenweiliang_title']} </td> ". "<td>{$row['chenweiliang_author']} </td> ". "<td>{$row['submission_date']} </td> ". "</tr>"; } echo '</table>'; mysqli_close($conn); ?>
Puoi anche usare la costante MYSQL_NUM come secondo parametro della funzione PHP mysqli_fetch_array(), che restituisce un array di numeri.
Esempio
I seguenti esempi usano MYSQL_NUM Il parametro visualizza tutti i record della tabella dati chenweiliang_tbl:
Utilizzare il parametro mysqli_fetch_array MYSQL_NUM per recuperare i dati:
<? php $dbhost = 'localhost:3306'; // mysql服务器主机地址 $dbuser = 'root'; // mysql用户名 $dbpass = '123456'; // mysql用户名密码 $conn = mysqli_connect($dbhost, $dbuser, $dbpass); if(! $conn ) { die('连接失败: ' . mysqli_error($conn)); } // 设置编码,防止中文乱码 mysqli_query($conn , "set names utf8"); $sql = 'SELECT chenweiliang_id, chenweiliang_title, chenweiliang_author, submission_date FROM chenweiliang_tbl'; mysqli_select_db( $conn, 'chenweiliang' ); $retval = mysqli_query( $conn, $sql ); if(! $retval ) { die('无法读取数据: ' . mysqli_error($conn)); } echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>'; echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>'; while($row = mysqli_fetch_array($retval, MYSQL_NUM)) { echo "<tr><td> {$row[0]}</td> ". "<td>{$row[1]} </td> ". "<td>{$row[2]} </td> ". "<td>{$row[3]} </td> ". "</tr>"; } echo '</table>'; mysqli_close($conn); ?>
I risultati di output dei tre esempi precedenti sono gli stessi.
rilascio di memoria
È buona norma liberare la memoria del cursore dopo aver eseguito un'istruzione SELECT.
La memoria può essere rilasciata tramite la funzione PHP mysqli_free_result().
L'esempio seguente mostra l'uso di questa funzione.
Esempio
Prova i seguenti esempi:
Memoria libera con mysqli_free_result:
<? php $dbhost = 'localhost:3306'; // mysql服务器主机地址 $dbuser = 'root'; // mysql用户名 $dbpass = '123456'; // mysql用户名密码 $conn = mysqli_connect($dbhost, $dbuser, $dbpass); if(! $conn ) { die('连接失败: ' . mysqli_error($conn)); } // 设置编码,防止中文乱码 mysqli_query($conn , "set names utf8"); $sql = 'SELECT chenweiliang_id, chenweiliang_title, chenweiliang_author, submission_date FROM chenweiliang_tbl'; mysqli_select_db( $conn, 'chenweiliang' ); $retval = mysqli_query( $conn, $sql ); if(! $retval ) { die('无法读取数据: ' . mysqli_error($conn)); } echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>'; echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>'; while($row = mysqli_fetch_array($retval, MYSQL_NUM)) { echo "<tr><td> {$row[0]}</td> ". "<td>{$row[1]} </td> ". "<td>{$row[2]} </td> ". "<td>{$row[3]} </td> ". "</tr>"; } echo '</table>'; // 释放内存 mysqli_free_result($retval); mysqli_close($conn); ?>
Speranza Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "In che modo il database MySQL interroga i dati nella tabella?Query Statement/Command/Syntax" per aiutarti.
Benvenuti a condividere il link di questo articolo:https://www.chenweiliang.com/cwl-461.html
Benvenuto nel canale Telegram del blog di Chen Weiliang per ricevere gli ultimi aggiornamenti!
📚 Questa guida contiene un valore enorme, 🌟Questa è un'opportunità rara, non perderla! ⏰⌛💨
Condividi e metti mi piace se ti va!
La tua condivisione e i tuoi like sono la nostra continua motivazione!