Rumah >pembangunan bahagian belakang >tutorial php >Sqlite 3 di luar asas
Tutorial ini menyelidiki SQLite 3, membina konsep pengenalan pangkalan data dan penciptaan jadual. Kami akan meneroka ciri -ciri dan fungsi canggih, membandingkannya dengan yang terdapat dalam sistem pangkalan data lain.
Konsep Utama:
.dump
arahan. .read
pilih pertanyaan dan klausa:
pernyataan mengambil data. Kami akan membuat jadual SELECT
dalam pangkalan data Users
untuk menggambarkan: Library.db
<code class="language-sql">CREATE TABLE Users ( SerialNo INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, Name TEXT NOT NULL, Id TEXT NOT NULL UNIQUE, Age INTEGER NOT NULL, DOJ TEXT NOT NULL );</code>Penyisipan data boleh dilakukan secara individu menggunakan
, atau dengan cekap menggunakan INSERT INTO
untuk melaksanakan arahan SQL dari fail (mis., .read
). Pertanyaan newusers.sql
mengambil data, dengan pilihan untuk menyesuaikan paparan lajur menggunakan SELECT
, .header ON
, dan alias lajur: .mode column
<code class="language-sql">SELECT Id AS 'User ID', Name, DOJ AS 'Date of Joining' FROM NewUsers;</code>
Memaparkan struktur jadual. .schema
di mana klausa dan pengendali:
hasil penapis klausa. SQLite menyokong pelbagai pengendali: WHERE
(concatenation), pengendali aritmetik, pengendali perbandingan, pengendali logik (||
, AND
, OR
), NOT
, BETWEEN
, IN
, LIKE
, GLOB
, EXISTS
, IS
. Contoh: IS NOT
<code class="language-sql">SELECT * FROM NewUsers WHERE Age >= 20; -- Age 20 or greater SELECT * FROM NewUsers WHERE DOJ BETWEEN '2011-12-30' AND '2014-12-30'; -- Date range</code>
Pesanan oleh dan hadkan klausa:
jenis hasil (ASC/DESC). ORDER BY
mengehadkan bilangan baris yang dikembalikan, dengan pilihan dengan LIMIT
untuk melangkau baris awal. OFFSET
kumpulan oleh dan mempunyai klausa:
Kumpulan baris berdasarkan lajur yang ditentukan. GROUP BY
penapis dikumpulkan hasil. HAVING
<code class="language-sql">SELECT Name, COUNT(Name) FROM NewUsers GROUP BY Name HAVING COUNT(Name) > 1; -- Duplicate names</code>
Kata kunci yang berbeza:
mengembalikan nilai unik. DISTINCT
melampirkan dan melepaskan pangkalan data:
ATTACH DATABASE
Menambah pangkalan data dengan alias, membolehkan pertanyaan merentasi pelbagai pangkalan data dalam satu sesi. .databases
menyenaraikan pangkalan data yang dilampirkan. DETACH DATABASE
membuang alias.
Transaksi:
SQLite menyokong urus niaga (mematuhi asid)., BEGIN TRANSACTION
, COMMIT
aliran transaksi kawalan. ROLLBACK
mencipta urus niaga bersarang untuk kawalan berbutir, yang membolehkan rollback ke titik tertentu menggunakan SAVEPOINT
dan melepaskan menggunakan ROLLBACK TO SAVEPOINT
. Mod AutoCommit adalah lalai, melaksanakan setiap pertanyaan sebagai urus niaga yang berasingan. RELEASE SAVEPOINT
Mengeksport pangkalan data:
Kandungan pangkalan data mengeksport ke format SQL, secara pilihan untuk jadual tertentu. .dump
mengalihkan output pertanyaan ke fail. .output
Tutorial ini meliputi ciri -ciri SQLite 3 Advanced, meningkatkan keupayaan anda untuk mengurus dan menanyakan data dengan cekap. Bahagian FAQ selanjutnya menjelaskan SavePoint Management.
Atas ialah kandungan terperinci Sqlite 3 di luar asas. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!