API database SQL Web sebenarnya bukan bagian integral dari spesifikasi HTML5, tetapi spesifikasi terpisah. Ini menggunakan satu set API untuk memanipulasi database klien. Browser arus utama seperti Safari, Chrome, Firefox, dan Opera telah mendukung database SQL Web. Database Web SQL HTML5 sangat menggoda. Ketika Anda menemukan bahwa Anda dapat menggunakan pernyataan kueri yang sama dengan kueri MySQL untuk mengoperasikan database lokal, Anda akan menemukan hal ini sangat menarik. Hari ini, mari kita pelajari tentang Web SQL Database API dari HTML 5.
Berikut ini akan memperkenalkan cara membuat dan membuka database, membuat tabel, menambahkan data, memperbarui data, menghapus data, dan menghapus tabel.
Pertama kali memperkenalkan tiga metode inti
1. OpenDatabase: Metode ini menggunakan database yang ada atau membuat database baru untuk membuat objek basis data.
2. Transaksi: Metode ini memungkinkan kita untuk mengontrol komitmen transaksi atau rollback sesuai dengan situasinya.
3. ExecutesQL: Metode ini digunakan untuk menjalankan kueri SQL nyata.
Langkah 1: Buka koneksi dan buat database
var database = openDatabase ("siswa", "1.0", "tabel siswa", 1024 * 1024, function () {});
if (! database) {
peringatan ("Pembuatan Basis Data Gagal!");
} kalau tidak {
peringatan ("Kreasi Basis Data berhasil!");
}
Jelaskan metode OpenDatabase membuka database yang ada, dan jika database tidak ada, itu juga dapat membuat database. Beberapa parameter adalah:
1. Nama Basis Data.
2. Nomor versi saat ini 1.0. Tidak peduli apa, tidak apa -apa jika Anda menulisnya sampai mati.
3. Deskripsi database.
4. Atur ukuran data.
5. Fungsi panggilan balik (dapat dihilangkan).
Buat database pada panggilan pertama, dan kemudian buat koneksi.
Basis data yang dibuat adalah lokal, dengan jalur sebagai berikut:
C:/Pengguna/Administrator/AppData/Lokal/Google/Chrome/Data Pengguna/Default/Basis Data/http_localhost_4987.
Database SQLite yang dibuat dapat digunakan untuk membuka file dengan SQLitespy dan Anda dapat melihat data di dalamnya. Sqlitespy adalah perangkat lunak hijau. Anda dapat mengunduh alamat di Baidu atau unduhan resmi Sqlitespy: Sqlitespy.
Langkah 2: Buat tabel data
this.createTable = function () {
database.transaction (function (tx) {
tx.executesql (
"Buat tabel jika tidak ada stu (id nyata unik, nama teks)",
[],
function (tx, hasil) {alert ('dibuat tabel Stu berhasil'); },
function (tx, error) {alert ('Buat tabel Stu gagal:' + error.message);
});
});
}
Jelaskan,
Fungsi ExecutesQL memiliki empat parameter, dan artinya adalah:
1) mewakili string kueri, dan bahasa SQL yang digunakan adalah SQLite 3.6.19.
2) Masukkan data string ke dalam kueri di mana tanda tanya berada.
3) Fungsi panggilan balik dieksekusi saat berhasil. Mengembalikan dua parameter: TX dan hasil eksekusi.
4) Fungsi panggilan balik yang dieksekusi pada kegagalan. Mengembalikan dua parameter: TX dan pesan kesalahan yang gagal.
Langkah 3: Lakukan penambahan, penghapusan, modifikasi dan pencarian
1) Tambahkan Data:
this.insert = function () {
database.transaction (function (tx) {
tx.executesql (
"Masukkan ke dalam nilai Stu (id, name) (?,?)",
[id, 'xu mingxiang'],
function () {alert ('Tambahkan data berhasil'); },
function (tx, error) {alert ('Tambahkan data gagal:' + error.message);
});
});
2) Data kueri
this.query = function () {
database.transaction (function (tx) {
tx.executesql (
"Pilih * dari Stu", [],
fungsi (tx, hasil) {// menjalankan fungsi panggilan balik yang berhasil
// Lakukan apa yang ingin Anda lakukan di sini .........
},
function (tx, error) {
alert ('kueri gagal:' + error.message);
});
});
}
Jelaskan
Fungsi panggilan balik yang berhasil dieksekusi dalam kode di atas memiliki hasil parameter.
Hasil: Kumpulan data kueri. Tipe datanya adalah SQLResultSet, seperti halnya data di C#.
Definisi sqlresultset adalah:
antarmuka sqlresultset {
Atribut readonly Long InsertID;
atribut readyly yang panjang sesuai;
Atribut readonly Baris sqlresultsetrowlist;
};
Properti terpenting - SQLResultSetrowlist tipe baris adalah baris dataset.
Baris memiliki dua properti: panjang dan item.
Oleh karena itu, dapatkan nilai baris dan kolom hasil kueri: hasilnya.
3) Perbarui data
this.update = function (id, name) {
database.transaction (function (tx) {
tx.executesql (
"Perbarui Stu Set Name =? Di mana id =?",
[Nama, ID],
fungsi (tx, hasil) {
},
function (tx, error) {
peringatan ('Pembaruan Gagal:' + error.message);
});
});
}
4) Hapus data
this.del = function (id) {
database.transaction (function (tx) {
tx.executesql (
"Hapus dari Stu di mana id =?",
[pengenal],
fungsi (tx, hasil) {
},
function (tx, error) {
alert ('penghapusan gagal:' + error.message);
});
});
}
5) Hapus tabel data
this.droptable = function () {
database.transaction (function (tx) {
tx.executesql ('drop table stu');
});
}
Demo database SQL Web untuk menambah, menghapus, memodifikasi, dan memeriksa, mengunduhnya dengan cepat.