Dalam bidang pembangunan web, pemprosesan data dan pembangunan aplikasi, memaparkan data dalam halaman adalah fungsi yang sangat penting. Apabila aplikasi web menjadi lebih kompleks, memaparkan data dalam halaman menjadi lebih biasa. Artikel ini terutamanya memperkenalkan cara menggunakan pangkalan data Oracle untuk merealisasikan fungsi paparan paging data dalam PHP.
Apa yang dipanggil paging adalah untuk membahagikan set data yang besar kepada beberapa bahagian kecil untuk paparan. Fungsi paging adalah untuk memudahkan pengguna melayari sejumlah besar data, di samping mengurangkan beban pada pelayan. Secara umumnya, paging perlu menentukan maklumat penting seperti berapa banyak rekod yang dipaparkan pada setiap halaman, halaman mana halaman semasa berada, berapa banyak halaman yang ada secara keseluruhan, dan sebagainya.
Terdapat banyak cara untuk memaparkan data dalam halaman Salah satu cara biasa ialah menggunakan pernyataan pertanyaan pangkalan data untuk halaman. Melalui pernyataan pertanyaan, anda boleh mengehadkan bilangan maksimum hasil yang dikembalikan dan menentukan rekod yang mana untuk mula mengembalikan hasil untuk mencapai paparan data kelui.
Dalam pangkalan data Oracle, anda boleh menggunakan pernyataan SQL untuk membuat pertanyaan data. Pernyataan pertanyaan yang biasa digunakan termasuk SELECT, INSERT, UPDATE dan DELETE, dsb. Apabila melakukan pertanyaan paging, pernyataan pertanyaan yang paling biasa digunakan ialah pernyataan SELECT. Berikut ialah struktur asas pernyataan pertanyaan:
PILIH lajur1, lajur2, ...
DARI nama_jadual
WHERE condition
ORDER BY column_name ASC|DESC
LIMIT mula, count;
Antaranya, column1, column2, dan lain-lain ialah nama lajur yang perlu disoal, nama_jadual ialah nama jadual, syarat ialah syarat pertanyaan, nama_lajur ialah nama lajur pengisihan, ASC bermaksud susunan menaik , DESC bermaksud tertib menurun, dan mula ialah rekod permulaan Pengimbangan, kiraan ialah bilangan rekod yang akan disoal. Perlu diingatkan bahawa vendor pangkalan data yang berbeza mungkin mempunyai kaedah penulisan yang sedikit berbeza.
Dalam pangkalan data Oracle, ROWNUM digunakan untuk mengawal nombor maksimum dan kedudukan permulaan hasil yang dikembalikan. Berikut ialah contoh mudah:
PILIH *
DARI (PILIH ROWNUM rn, t.*
FROM table_name t WHERE condition ORDER BY column_name ASC|DESC)
DI MANA rn ANTARA mula DAN mula + kiraan - 1;
Dalam pernyataan pertanyaan ini, semua rekod yang memenuhi syarat akan disoal terlebih dahulu, dan nombor ROWNUM akan ditambahkan pada setiap rekod Kemudian, rekod yang memenuhi keperluan akan dipilih daripada rekod ini, iaitu rekod kiraan akan diambil dari mula. Akhirnya, rekod ini dikembalikan kepada pengguna
Dalam PHP, anda boleh menggunakan sambungan OCI8 untuk menyambung ke Pangkalan data Oracle dan laksanakan pernyataan pertanyaan Pasang sambungan OCI8, dan kemudian gunakan fungsi oci_connect() untuk menyambung ke pangkalan data Berikut ialah contoh menyambung ke pangkalan data Oracle:
$conn = oci_connect(. 'nama pengguna', 'kata laluan', 'nama hos/SID');
Antaranya, nama pengguna dan kata laluan merujuk kepada nama pengguna dan kata laluan untuk log masuk ke pangkalan data Oracle, nama hos ialah nama hos atau alamat IP bagi pangkalan data, dan SID ialah pengecam unik pangkalan data
Selepas sambungan berjaya, anda boleh menggunakan fungsi oci_parse() dan fungsi oci_execute() untuk melaksanakan pernyataan pertanyaan pertanyaan paging:
$page = isset($_GET['page']) ? $page - 1) * $per_page;
$query = "PILIH *
FROM (SELECT ROWNUM rn, t.* FROM table_name t WHERE condition ORDER BY column_name ASC|DESC) WHERE rn BETWEEN :start AND :end";
oci_bind_by_name( $stid, ':start', $start);
oci_bind_by_name($stid, ':end', $start + $per_page - 1) ;
oci_execute($stid);
Dalam kod di atas, $halaman mewakili nombor halaman semasa, $per_halaman mewakili bilangan rekod yang dipaparkan pada setiap halaman dan $mula mewakili pengimbangan Amaun rekod permulaan Pertama, kira kedudukan permulaan rekod itu ditanya, kemudian bina pernyataan pertanyaan Oracle, dan gunakan fungsi oci_parse() untuk menyusun pernyataan pertanyaan Kemudian, gunakan fungsi oci_bind_by_name() untuk mengikat parameter dalam pernyataan pertanyaan untuk mencapai tujuan prapemprosesan. Akhir sekali, gunakan fungsi oci_execute() untuk melaksanakan pernyataan pertanyaan dan menyimpan hasilnya dalam $stid.
KesimpulanAtas ialah kandungan terperinci Cara menggunakan Oracle untuk memaparkan data dalam paging dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!