Direktori Artikel
- 1 Data kueri MySQL
- 2 Dapatkan data melalui command prompt
- 3 Baca lembar data:
- 4 Gunakan skrip PHP untuk mendapatkan data
- 5 Gunakan parameter mysqli_fetch_array MYSQL_ASSOC untuk mengambil data:
- 6
- 7 Gunakan mysqli_fetch_assoc untuk mengambil data:
- 8 Gunakan parameter mysqli_fetch_array MYSQL_NUM untuk mengambil data:
- 9 pelepasan memori
- 10 Memori bebas dengan mysqli_free_result:
database MySQLBagaimana cara menanyakan data dalam tabel?Pernyataan Kueri/Perintah/Sintaks
MySQL Data kueri
Database MySQL menggunakan pernyataan SQL SELECT untuk meminta data.
Anda dapat meminta data dalam database melalui jendela command prompt mysql>, atau melalui skrip PHP.
tatabahasa
Berikut ini adalah sintaks SELECT umum untuk query data dalam database MySQL:
SELECT column_name,column_name FROM table_name [WHERE Clause] [OFFSET M ][LIMIT N]
- Dalam pernyataan kueri, Anda bisa menggunakan satu atau beberapa tabel, memisahkan tabel dengan koma (,), dan menggunakan pernyataan WHERE untuk mengatur kondisi kueri.
- Perintah SELECT dapat membaca satu atau lebih record.
- Anda dapat menggunakan tanda bintang (*) untuk mengganti bidang lain, pernyataan SELECT akan mengembalikan semua data bidang tabel
- Anda dapat menggunakan pernyataan WHERE untuk memasukkan kondisi apapun.
- Anda dapat menentukan offset data di mana pernyataan SELECT memulai kueri dengan OFFSET.Secara default, offsetnya adalah 0.
- Anda dapat menggunakan properti LIMIT untuk mengatur jumlah record yang dikembalikan.
Dapatkan data melalui command prompt
Dalam contoh berikut, kita akan menggunakan perintah SQL SELECT untuk mendapatkan data dari tabel data MySQL chenweiliang_tbl:
Contoh
Contoh berikut akan mengembalikan semua catatan tabel data chenweiliang_tbl:
Baca lembar data:
select * from chenweiliang_tbl;
Gunakan skrip PHP untuk mendapatkan data
menggunakan fungsi PHP mysqli_query() dan SQL PILIH perintah untuk mendapatkan data.
Fungsi ini digunakan untuk mengeksekusi perintah SQL dan kemudian meneruskan fungsi PHP mysqli_fetch_array() untuk menggunakan atau mengeluarkan data untuk semua kueri.
mysqli_fetch_array() Fungsi mengambil baris dari kumpulan hasil sebagai larik asosiatif, atau larik angka, atau keduanya. Mengembalikan larik yang dihasilkan dari baris yang diambil dari kumpulan hasil, atau salah jika tidak ada baris lagi.
Contoh berikut membaca semua catatan dari tabel data chenweiliang_tbl.
Contoh
Coba contoh berikut untuk menampilkan semua catatan tabel data chenweiliang_tbl.
Gunakan parameter mysqli_fetch_array MYSQL_ASSOC untuk mengambil data:
<? 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); ?>
Dalam contoh di atas, setiap baris record yang dibaca ditugaskan ke variabel $row, dan kemudian setiap nilai dicetak.
Catatan:Ingat bahwa jika Anda perlu menggunakan variabel dalam sebuah string, letakkan variabel dalam kurung kurawal.
Dalam contoh di atas, parameter kedua dari fungsi PHP mysqli_fetch_array() adalah: MYSQL_ASSOC, atur parameter ini ke kueri hasil untuk mengembalikan larik asosiatif, Anda dapat menggunakan nama bidang sebagai indeks larik.
PHP menyediakan fungsi lain mysqli_fetch_assoc(), fungsi mengambil baris dari hasil yang ditetapkan sebagai array asosiatif.Mengembalikan array asosiatif yang dihasilkan dari baris yang diambil dari kumpulan hasil, atau salah jika tidak ada baris lagi.
Contoh
Coba contoh berikut, yang menggunakan mysqli_fetch_assoc() berfungsi untuk menampilkan semua catatan tabel data chenweiliang_tbl:
Gunakan mysqli_fetch_assoc untuk mengambil data:
<? 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); ?>
Anda juga dapat menggunakan konstanta MYSQL_NUM sebagai parameter kedua dari fungsi PHP mysqli_fetch_array(), yang mengembalikan larik angka.
Contoh
Contoh berikut menggunakan MYSQL_NUM Parameter menampilkan semua catatan tabel data chenweiliang_tbl:
Gunakan parameter mysqli_fetch_array MYSQL_NUM untuk mengambil data:
<? 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); ?>
Hasil keluaran dari ketiga contoh di atas adalah sama.
pelepasan memori
Ini adalah praktik yang baik untuk mengosongkan memori kursor setelah kami menjalankan pernyataan SELECT.
Memori dapat dilepaskan melalui fungsi PHP mysqli_free_result().
Contoh berikut menunjukkan penggunaan fungsi ini.
Contoh
Coba contoh berikut:
Memori bebas dengan 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); ?>
Harapan Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "Bagaimana database MySQL mengkueri data dalam tabel?Pernyataan Kueri/Perintah/Sintaks" untuk membantu Anda.
Selamat datang untuk membagikan tautan artikel ini:https://www.chenweiliang.com/cwl-461.html
Selamat datang di saluran Telegram blog Chen Weiliang untuk mendapatkan pembaruan terkini!
📚 Panduan ini mengandung nilai yang sangat besar, 🌟Ini adalah kesempatan langka, jangan sampai terlewatkan! ⏰⌛💨
Bagikan dan sukai jika Anda suka!
Berbagi dan suka Anda adalah motivasi berkelanjutan kami!