Mewujudkan Pangkalan Data dan Jadual Di SQL

Mewujudkan Pangkalan Data

Adakah anda bersedia untuk membuat pangkalan data dan jadual dengan Bahasa Kuasa Struktur ? Dalam artikel ini, kami meneroka proses membuat jadual secara manual dengan perintah CREATE DATABASE dan CREATE TABLE. Sekiranya anda baru kepada SQL, anda mungkin ingin mengkaji semula artikel Asas SQL kami terlebih dahulu.

Keperluan Perniagaan

Sebelum kita duduk di papan kekunci, kita perlu memastikan bahawa kita mempunyai pemahaman yang kukuh tentang keperluan pelanggan. Apa cara terbaik untuk mendapatkan wawasan ini? Bercakap dengan pelanggan, tentu saja! Selepas duduk bersama Pengarah Sumber Manusia XYZ, kami telah mengetahui bahawa mereka adalah syarikat jualan widget dan berminat untuk menjejaki maklumat mengenai kakitangan jualan mereka.

XYZ Corporation membahagikan pasukan jualan mereka ke wilayah timur dan barat, masing-masing dibahagikan kepada banyak wilayah yang diliputi oleh wakil jualan individu. Jabatan Sumber Manusia ingin mengesan wilayah yang dilindungi oleh setiap pekerja serta maklumat gaji dan struktur penyeliaan setiap pekerja. Untuk memenuhi keperluan ini, kami telah merangka pangkalan data yang terdiri daripada tiga jadual, ditunjukkan dalam rajah Entity-Relationship pada halaman ini.

Memilih Platform Pangkalan Data

Kami telah memutuskan untuk menggunakan sistem pengurusan pangkalan data (atau DBMS) yang dibina di atas Bahasa Kuasa Struktur (SQL). Oleh itu, semua pangkalan data kami dan perintah penciptaan jadual harus ditulis dengan standard ANSI SQL dalam fikiran.

Sebagai manfaat tambahan, menggunakan SQL yang mematuhi ANSI akan memastikan bahawa arahan ini akan berfungsi pada mana-mana DBMS yang menyokong standard SQL , termasuk Oracle dan Microsoft SQL Server. Sekiranya anda belum memilih platform untuk pangkalan data anda, artikel Pilihan Perisian Pangkalan Data membolehkan anda melalui proses pemilihan.

Mewujudkan Pangkalan Data

Langkah pertama kami adalah untuk membuat pangkalan data itu sendiri. Banyak sistem pengurusan pangkalan data menawarkan satu siri pilihan untuk menyesuaikan parameter pangkalan data pada langkah ini, tetapi pangkalan data kami hanya membenarkan penciptaan pangkalan data mudah. Seperti semua arahan kami, anda mungkin ingin merujuk kepada dokumentasi untuk DBMS anda untuk menentukan sama ada parameter lanjutan yang disokong oleh sistem khusus anda memenuhi keperluan anda. Mari kita gunakan arahan CREATE DATABASE untuk menyediakan pangkalan data kami:

CREATE DATABASE personnel

Ambil nota khas mengenai permodalan yang digunakan dalam contoh di atas. Amalan biasa di kalangan pengaturcara SQL menggunakan semua huruf besar untuk kata kunci SQL seperti "CREATE" dan "DATABASE" sambil menggunakan semua huruf kecil untuk nama yang ditentukan pengguna seperti nama pangkalan "kakitangan". Konvensyen-konvensyen ini menyediakan mudah dibaca.

Teruskan membaca tutorial ini kerana kami membuat jadual untuk pangkalan data kami.

Belajar Lebih Banyak

Jika anda ingin mempelajari lebih lanjut mengenai Bahasa Quod Structured , baca Pengenalan kepada SQL atau mendaftar untuk kursus e-mel Pembelajaran SQL percuma kami.

Sekarang bahawa kami telah merancang dan mencipta pangkalan data kami, kami bersedia untuk membuat tiga jadual yang digunakan untuk menyimpan data kakitangan XYZ Corporation. Kami akan melaksanakan jadual yang kami bentuk di bahagian sebelumnya tutorial ini.

Mencipta Jadual Pertama Kami

Jadual pertama kami terdiri daripada data peribadi untuk setiap pekerja syarikat kami. Kita perlu memasukkan nama, gaji, ID, dan pengurus setiap pekerja. Amalan reka bentuk yang baik untuk memisahkan nama terakhir dan pertama ke dalam bidang yang berasingan untuk memudahkan pencarian data dan menyusunnya pada masa akan datang. Juga, kami akan menjejaki pengurus setiap pekerja dengan memasukkan rujukan kepada ID pekerja pengurus dalam setiap rekod pekerja. Pertama kita lihat meja pekerja yang diingini.

Atribut ReportsTo menyimpan ID pengurus untuk setiap pekerja. Dari rekod sampel yang ditunjukkan, kita dapat menentukan bahawa Sue Scampi adalah pengurus kedua-dua Tom Kendall dan John Smith. Walau bagaimanapun, tidak ada maklumat dalam pangkalan data mengenai pengurus Sue, seperti yang ditunjukkan oleh entri NULL di barisnya.

Sekarang kita boleh menggunakan SQL untuk membuat jadual dalam pangkalan data kakitangan kami. Sebelum kita berbuat demikian, mari pastikan kita berada dalam pangkalan data yang betul dengan mengeluarkan arahan USE:

Kakitangan GUNAKAN;

Secara alternatifnya, "personil DATABASE;" arahan akan melaksanakan fungsi yang sama. Sekarang kita boleh melihat perintah SQL yang digunakan untuk membuat jadual pekerja kami:

CREATE TABLE employees (employeeid INTEGER NOT NULL, lastname VARCHAR (25) NOT NULL, firstname VARCHAR (25) NOT NULL, reportsto INTEGER NULL);

Seperti contoh di atas, ambil perhatian bahawa konvensyen pengaturcaraan menentukan bahawa kita menggunakan semua huruf kapital untuk kata kunci SQL dan huruf kecil untuk lajur dan jadual yang diberi nama pengguna. Perintah di atas mungkin kelihatan mengelirukan pada mulanya, tetapi sebenarnya ada struktur mudah di belakangnya. Berikut adalah pandangan yang umum yang mungkin menampakkan sedikit perkara:

CREATE table_name (attribute_name pilihan datatype, ..., attribute_name pilihan datatype);

Atribut dan Jenis Data

Dalam contoh terdahulu, nama jadual adalah pekerja dan kami memasukkan empat atribut: employeeid, nama akhir, nama depan, dan laporan. Data jenis ini menunjukkan jenis maklumat yang ingin kami simpan dalam setiap bidang. ID pekerja adalah nombor integer mudah, jadi kami akan menggunakan datatype INTEGER untuk kedua-dua bidang pekerja dan field laporan. Nama pekerja akan menjadi rentetan aksara panjang berubah dan kami tidak mengharapkan mana-mana pekerja mempunyai nama pertama atau nama lebih lama daripada 25 aksara. Oleh itu, kami akan menggunakan jenis VARCHAR (25) untuk medan ini.

Nilai NULL

Kita juga boleh menentukan sama ada NULL atau TIDAK NULL dalam medan pilihan penyataan CREATE. Ini hanya memberitahu pangkalan data sama ada nilai NULL (atau kosong) dibenarkan untuk atribut tersebut apabila menambah baris kepada pangkalan data. Dalam contoh kami, jabatan HR memerlukan ID pekerja dan nama lengkap disimpan untuk setiap pekerja. Walau bagaimanapun, tidak setiap pekerja mempunyai pengurus - laporan Ketua Pegawai Eksekutif kepada sesiapa! - jadi kami membenarkan penyertaan NULL dalam bidang itu. Ambil perhatian bahawa NULL adalah nilai lalai dan meninggalkan pilihan ini secara tersirat membolehkan nilai NULL untuk atribut.

Membina Jadual Yang Tersisa

Sekarang mari kita lihat di jadual wilayah. Dari pandangan yang cepat pada data ini, nampaknya kita perlu menyimpan integer dan dua rentetan panjang berubah. Seperti contoh sebelumnya, kami tidak mengharapkan ID Kawasan mengambil lebih daripada 25 aksara. Walau bagaimanapun, beberapa wilayah kami mempunyai nama yang lebih panjang, jadi kami akan memperluaskan panjang atribut yang dibenarkan untuk 40 aksara. Mari lihat pada SQL sepadan:

JAWAPAN wilayah TABLE (wilayahID INTEGER TIDAK NULL, wilayah Keterangan VARCHAR (40) TIDAK NULL, regionid VARCHAR (25) TIDAK NULL);

Akhirnya, kami akan menggunakan jadual PekerjaTerritori untuk menyimpan hubungan antara pekerja dan wilayah. Maklumat terperinci mengenai setiap pekerja dan wilayah disimpan dalam dua jadual sebelumnya. Oleh itu, kita hanya perlu menyimpan dua nombor pengenalan integer dalam jadual ini. Jika kita perlu memperluaskan maklumat ini, kita boleh menggunakan JOIN dalam perintah pemilihan data kami untuk mendapatkan maklumat dari pelbagai jadual. Kaedah menyimpan data ini mengurangkan redundansi dalam pangkalan data kami dan memastikan penggunaan ruang yang optimum pada pemacu storan kami. Kami akan menutup arahan JOIN dengan mendalam dalam tutorial masa depan. Berikut adalah kod SQL untuk melaksanakan jadual akhir kami:

CREATE employeeterritories (employeeid INTEGER NOT NULL, territoryID INTEGER NOT NULL);

Mekanisme SQL Menyediakan Mengubah Struktur Pangkalan Data Selepas Penciptaan

Sekiranya anda sangat pandai hari ini, anda mungkin menyedari bahawa kami "secara tidak sengaja" mengabaikan salah satu keperluan reka bentuk apabila melaksanakan jadual pangkalan data kami. Pengarah Sumber Manusia XYZ Corporation meminta agar maklumat gaji kakitangan mengejar pangkalan data dan kami mengabaikan untuk menyediakan ini dalam jadual pangkalan data yang kami buat.

Walau bagaimanapun, semuanya tidak hilang. Kita boleh menggunakan arahan ALTER TABLE untuk menambah atribut ini ke pangkalan data yang sedia ada. Kami mahu menyimpan gaji sebagai nilai integer. Sintaks ini agak serupa dengan perintah CREATE TABLE, di sini adalah:

ALTER TABLE pekerja TAMBAH gaji INTEGER NULL;

Perhatikan bahawa kami menyatakan bahawa nilai NULL dibenarkan untuk atribut ini. Dalam kebanyakan kes, tiada pilihan apabila menambah lajur ke jadual sedia ada. Ini disebabkan oleh fakta bahawa jadual itu mengandungi baris tanpa kemasukan atribut ini. Oleh itu, DBMS secara automatik memasukkan nilai NULL untuk mengisi kekosongan.

Dan itu membungkus pandangan kami di pangkalan data SQL dan proses penciptaan meja. Semak semula selalunya untuk ansuran baru dalam siri tutorial SQL kami. Sekiranya anda ingin peringatan e-mel apabila artikel baru ditambahkan ke tapak Mengenai Pangkalan data, pastikan anda melanggan newsletter kami!