KomputerPerisian

Bagaimana untuk menulis pertanyaan SQL - contoh terperinci

Setiap daripada kami kerap berlanggar dan menggunakan pelbagai pangkalan data. Apabila kami memilih alamat e-mel, kami bekerjasama dengan pangkalan data. Pangkalan data menggunakan perkhidmatan carian, bank untuk menyimpan data pelanggan, dll.

Walau bagaimanapun, walaupun penggunaan pangkalan data berterusan, walaupun bagi banyak pemaju sistem perisian, terdapat banyak "bintik putih" kerana penafsiran yang berbeza dari segi yang sama. Kami akan memberikan takrif ringkas istilah utama pangkalan data sebelum memeriksa bahasa SQL. Dan sebagainya.

Pangkalan data - fail atau set fail untuk menyimpan struktur data yang diperintahkan dan hubungan mereka. Sangat kerap pangkalan data dipanggil sistem pengurusan pangkalan data (DBMS). Pangkalan data hanya repositori maklumat dalam format tertentu dan boleh berfungsi dengan DBMS yang berbeza.

Jadual - bayangkan folder di mana dokumen disimpan, dikumpulkan oleh ciri tertentu, sebagai contoh, senarai pesanan untuk bulan lepas. Ini ialah jadual dalam pangkalan data komputer . Jadual berasingan mempunyai nama yang unik.

Jenis data - jenis maklumat yang boleh disimpan dalam lajur atau baris berasingan. Ia boleh menjadi nombor atau teks format tertentu.

Lajur dan tali - kita semua bekerja dengan spreadsheet, yang juga mengandungi baris dan lajur. Sebarang pangkalan data relasi berfungsi dengan jadual dengan cara yang sama. Baris kadang kala dipanggil rekod.

Kunci utama - setiap baris jadual boleh mempunyai satu atau lebih lajur untuk mengenal pasti uniknya. Tanpa kunci utama, sangat sukar untuk mengemaskini, mengubah suai, atau memadamkan baris yang diperlukan.

Apa itu SQL?

Bahasa pertanyaan SQL (Bahasa Terstruktur Bahasa Inggeris) telah dibangunkan hanya untuk bekerja dengan pangkalan data dan kini merupakan piawaian untuk semua pangkalan data yang popular. Sintaks bahasa terdiri daripada sebilangan kecil pengendali dan mudah dipelajari. Tetapi, walaupun kesederhanaan luaran, ia membolehkan penciptaan pertanyaan sql untuk operasi kompleks dengan pangkalan data apa-apa saiz.

Sejak 1992, terdapat piawai yang diterima umum, yang dipanggil ANSI SQL. Ia mentakrifkan sintaks dasar dan fungsi pengendali dan disokong oleh semua pemimpin pasaran pangkalan data, seperti ORACLE Microsoft SQL Server. Tidak mustahil untuk mempertimbangkan semua ciri bahasa dalam satu artikel kecil, jadi kami akan menganggap hanya pertanyaan SQL asas secara ringkas. Contoh menggambarkan kesederhanaan dan keupayaan bahasa:

  • Penciptaan pangkalan data dan jadual;
  • Pensampelan data;
  • Menambah rekod;
  • Pengubahsuaian dan penghapusan maklumat.

Jenis Data SQL

Semua lajur dalam jadual pangkalan data menyimpan satu jenis data. Jenis data dalam SQL adalah sama seperti dalam bahasa pengaturcaraan lain.

Jenis data Penerangan
INT Integer
REAL Nombor titik terapung
TEKS Rentetan watak dengan panjang berubah
DATE Pertanyaan Sql "tarikh" dalam pelbagai format
TIME Masa
CHAR Arahan teks panjang tetap

Buat jadual dan pangkalan data

Anda boleh membuat pangkalan data, jadual dan pertanyaan lain dalam SQL dengan dua cara:

  • Pernyataan SQL melalui konsol DBMS
  • Menggunakan alat pentadbiran interaktif yang termasuk dalam pelayan pangkalan data.

Mewujudkan pangkalan data baru dengan pernyataan CREATE DATABASE ; . Seperti yang anda dapat lihat, sintaks adalah mudah dan ringkas.

Jadual di dalam pangkalan data dicipta oleh pernyataan CREATE TABLE dengan parameter berikut:

  • Nama jadual
  • Nama dan jenis data lajur

Contohnya, buat jadual Komoditi dengan lajur berikut:

Lajur Penerangan
Komoditi_id ID Produk
Vendor_id ID Penjual (penjual utama jadual luaran)
Nama komoditi Nama Produk
Komoditi_price Kos
Commodity_desc Penerangan

Buat jadual:

BUAT KOMODITI JADUAL

(Commodity_id CHAR (15) TIDAK NULL,

Vendor_id CHAR (15) TIDAK NULL,

Commodityname CHAR (254) NULL,

Commodity_price DECIMAL (8,2) NULL,

Commodity_desc VARCHAR (1000) NULL);

Jadual terdiri daripada lima lajur. Selepas nama itu adalah jenis data, lajur dipisahkan oleh koma. Nilai lajur boleh dibatalkan (NULL) atau mesti diisi (TIDAK NULL), dan ini ditentukan apabila jadual dibuat.

Memilih data dari jadual

Operator pengambilan data adalah query SQL yang paling biasa digunakan. Untuk mendapatkan maklumat, anda perlu menentukan apa yang ingin kami pilih daripada jadual tersebut. Pertama contoh mudah:

SELECT commodity_name DARI Komoditi

Selepas pernyataan SELECT, kami nyatakan nama lajur untuk mendapatkan maklumat, dan FROM menentukan jadual.

Hasil dari pelaksanaan query akan menjadi semua baris tabel dengan nilai-nilai Commodity_name dalam urutan dimana mereka dimasukkan ke database yaitu Tanpa menyusun apa-apa. Untuk memerintahkan keputusan, gunakan klausa ORDER BY pilihan.

Untuk menanyakan berbilang bidang, kami menyenaraikannya dengan koma, seperti dalam contoh berikut:

SELECT commodity_id, commodity_name, komoditi_price DARI Komoditi

Adalah mungkin untuk mendapatkan nilai semua lajur rentetan sebagai hasil daripada pertanyaan. Untuk melakukan ini, gunakan tanda "*":

PILIH * DARI Komoditi

  • Di samping itu, SELECT menyokong:
  • Data penyusun (ORDER BY clause)
  • Pemilihan mengikut keadaan (WHERE)
  • Tempoh kumpulan (GROUP BY)

Menambah satu baris

Untuk menambah baris ke jadual, gunakan pertanyaan SQL dengan pernyataan INSERT. Menambah boleh dilakukan dengan tiga cara:

  • Tambah barisan baru;
  • Sebahagian daripada garis;
  • Keputusan pertanyaan.

Untuk menambah baris lengkap, anda mesti nyatakan nama jadual dan lajur baris baru. Berikan contoh:

INSERT INTO NOMODES VALUES ('106', '50', 'Coca-Cola', '1.68', 'No Alcogol,')

Contohnya menambah produk baru ke meja. Nilai ditentukan selepas VALUES untuk setiap lajur. Jika tiada nilai yang sama untuk lajur, maka anda mesti nyatakan NULL. Lajur diisi dengan nilai dalam perintah yang ditetapkan semasa membuat jadual.

Dalam hal menambah hanya sebahagian daripada rentetan, anda mesti jelas menyatakan nama lajur, seperti dalam contoh:

INSERT INTO Commodity (komoditi_id, vendor_id, komoditi_name)

VALUES ('106', '50', 'Coca-Cola',)

Kami hanya memasukkan pengecam barangan, pembekal dan namanya, dan bidang yang masih kosong dibiarkan kosong.

Menambah keputusan pertanyaan

Pada asasnya, INSERT digunakan untuk menambah rentetan, tetapi juga boleh digunakan untuk menambah hasil pernyataan SELECT.

Edit data

Untuk menukar maklumat dalam bidang jadual pangkalan data, anda mesti menggunakan kenyataan UPDATE. Operator boleh digunakan dalam dua cara:

  • Semua baris dalam jadual dikemas kini.
  • Hanya untuk rentetan tertentu.

UPDATE terdiri daripada tiga elemen utama:

  • Jadual di mana anda ingin membuat perubahan;
  • Nama lapangan dan nilai baru mereka;
  • Syarat untuk memilih baris untuk perubahan.

Mari kita pertimbangkan satu contoh. Katakan bahawa produk dengan ID = 106 telah mengubah nilainya, jadi garis ini perlu dikemas kini. Tulis pernyataan berikut:

UPDATE Commodity SET commodity_price = '3.2' WHERE komoditi_id = '106'

Kami menentukan nama jadual, dalam kes kami Komoditi, di mana kemas kini akan dibuat, kemudian selepas SET, nilai baru ruang dan cari rekod yang dikehendaki, menyatakan ID yang dikehendaki dalam klausa WHERE.

Untuk menukar berbilang lajur selepas pernyataan SET, nyatakan beberapa pasangan nilai lajur, dipisahkan dengan koma. Kami melihat contoh di mana nama dan harga produk dikemas kini:

Komoditi SET UPDATE komoditi_name = 'Fanta', commodity_price = '3.2' WHERE komoditi_id = '106'

Untuk memadamkan maklumat dalam lajur, anda boleh menetapkannya ke NULL jika struktur jadual membenarkannya. Perlu diingat bahawa NULL adalah tepat "tidak" nilai, dan bukan sifar dalam bentuk teks atau nombor. Padam penerangan produk:

UPDATE Commodity SET commodity_desc = NULL WHERE komoditi_id = '106'

Memadam baris

Permintaan SQL untuk memadam baris dalam jadual dilakukan oleh pernyataan DELETE. Terdapat dua kegunaan:

  • Baris tertentu dipadamkan di dalam jadual;
  • Semua baris dalam jadual dipadamkan.

Contoh penghapusan satu baris dari jadual:

DELETE DARI komoditi WHERE komoditi_id = '106'

Selepas DELETE DARI, nyatakan nama jadual di mana baris akan dipadamkan. Klausa WHERE mengandungi syarat untuk memilih baris yang akan dipadamkan. Dalam contoh, kami memadam baris item dengan ID = 106. Sangat penting untuk menentukan WHERE. Melangkau pengendali ini akan menyebabkan penyingkiran semua baris dalam jadual. Ini juga terpakai untuk mengubah nilai medan.

Pernyataan DELETE tidak menyatakan nama lajur dan metakarakter. Ia benar-benar menghapus garisan, dan ia tidak dapat memadamkan lajur tunggal.

Menggunakan SQL dalam Access

Akses Microsoft biasanya digunakan dalam mod interaktif untuk membuat jadual, pangkalan data, untuk mengurus, mengubah suai, menganalisis data dalam pangkalan data dan untuk melaksanakan pertanyaan Akses SQL melalui pereka Query interaktif yang mudah, menggunakan yang anda boleh membina dan segera melaksanakan penyataan SQL Apa-apa kerumitan.

Juga, mod akses pelayan disokong, di mana DBMS Akses boleh digunakan sebagai penjana pertanyaan SQL kepada mana-mana sumber data ODBC. Ciri ini membolehkan aplikasi Akses untuk berinteraksi dengan pangkalan data dari sebarang format.

Sambungan SQL

Oleh kerana pertanyaan SQL tidak mempunyai semua kemampuan bahasa pengaturcaraan prosedur, seperti gelung, cawangan, dan sebagainya, vendor DBMS sedang mengembangkan versi SQL mereka sendiri dengan keupayaan canggih. Pertama sekali, ini adalah sokongan untuk prosedur yang disimpan dan operator bahasa tatacara standard.

Dialek bahasa yang paling biasa ialah:

  • Pangkalan Data Oracle - PL / SQL
  • Interbase, Firebird - PSQL
  • Microsoft SQL Server - Transact-SQL
  • PostgreSQL - PL / pgSQL.

SQL di Internet

Pangkalan data MySQL diedarkan di bawah lesen bebas GNU General Public License. Terdapat lesen komersil dengan kemungkinan membangun modul tersuai. Sebagai sebahagian daripada perhimpunan pelayan Internet yang paling popular, seperti XAMPP, WAMP dan LAMP, dan merupakan pangkalan data yang paling popular untuk membangunkan aplikasi di Internet.

Ia telah dibangunkan oleh Sun Microsystems dan kini disokong oleh Oracle. Ia menyokong pangkalan data sehingga 64 terabytes, sintaks standard SQL: 2003, replikasi pangkalan data dan perkhidmatan awan.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ms.delachieve.com. Theme powered by WordPress.