Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

KENDALA SQL

Batasan SQL menentukan aturan/batasan/pembatasan untuk data yang ada dalam tabel. Batasan SQL ditentukan pada saat pembuatan tabel atau setelah pembuatan tabel menggunakan perintah ALTER. Ada dua jenis batasan batasan tingkat kolom dan batasan tingkat tabel .Seperti yang ditentukan oleh level kolom nama, ini menentukan kolom tertentu. Dalam batasan tingkat tabel, ini menentukan lebih dari satu kolom atau semua kolom dalam tabel.NOT NULL: Ini memastikan bahwa nilai kolom yang ditentukan tidak boleh NULL.UNIK: Ini memastikan bahwa setiap nilai dalam kolom berbeda.PRIMARY KEY: Kunci utama memastikan NOT NULL dan UNIQUE. Artinya nilai tidak boleh nol dan harus berbeda satu sama lain. Oleh karena itu, kunci utama secara unik mengidentifikasi setiap catatan dalam tabel.KUNCI ASING: Ini secara unik mengidentifikasi catatan dari tabel lain. Kunci asing adalah referensi ke tabel lain dan seperti kunci utama dari tabel lain.DEFAULT: Ini menetapkan nilai default ketika nilai tidak diberikan.PERIKSA: Ini memastikan bahwa semua nilai dalam kolom memenuhi suatu kondisi.INDEX: Indeks dibuat dan digunakan untuk mengambil data dari database.

BUKAN NULL

Nilai default untuk setiap kolom adalah NULL. Batasan Not Null memastikan nilai kolom tidak boleh nol. Batasan ini selalu memastikan kolom memiliki beberapa nilai. Itu tidak mengizinkan penyisipan atau pembaruan catatan tanpa menyebutkan nilai ke bidang ini. Pengguna dapat menambahkan batasan ini ke satu atau beberapa atau semua kolom tabel.Sintaks: CREATE  TABLE table_name (tipe data kolom 1 NOT NULL,………);Contoh: Buat tabel STUDENT(student_id int NOT NULL,student_name varchar(10),student_dept varchar(10) NOT NULL,classyear int); Pada contoh di atas, BUKAN NULL batasan diterapkan pada dua kolom student_id dan student_dept di tabel STUDENT saat membuat tabel. Deskripsi tabel STUDENT menunjukkan kolom mana yang boleh NULL atau tidak boleh NULL. Lihat layar keluaran pada saat memasukkan nilai ke dalam tabel, bukan batasan nol yang tidak mengizinkan memasukkan nilai NULL ke bidang tempat batasan diterapkan.UNIQUE Batasan unik menghindari entri duplikat di kolom. Satu tabel dapat memiliki beberapa kunci unik.Sintaks: CREATE  TABLE table_name (tipe data kolom 1 UNIK,………);Contoh: buat tabel student(student_id int Unique,student_name varchar(10) unique,student_dept varchar(10) not null,classyear int ); Anda dapat menulis kueri di atas dalam bentuk lain. Buat tabel student(student_id int,student_name varchar(10) unique,student_dept varchar(10) not null,classyear int ,unique (student_id));# tentukan banyak kolom unik sekaligus Sintaks: CREATE  TABLE table_name(tipe data kolom 1, ……… kolom n, constraint constraint_name Unique (column1,..));Contoh: buat tabel student(student_id int,student_name varchar(10) unique,student_dept varchar(10) not null,classyear int ,Constraint cs_studentunique (student_id, student_name)); # Tambahkan Batasan UNIK Menggunakan Pernyataan ALTERSintaks: Ubah tabel table_nameTambahkan Unik (column_name);Contoh: Ubah tabel StudentAdd Unique (student_id);Sintaks: Ubah table table_nameTambahkan Constraint constraint_name Unik (column1,column2);Contoh: Ubah tabel StudentAdd Constraint cs_student Unique (student_id,student_name);Kunci Utama Primary key secara unik mengidentifikasi setiap record dalam kolom, satu tabel memiliki satu Primary key.Primary key dapat berupa satu kolom atau grup kolom.Sintaks: Buat tabel table_name( tipe data kolom Kunci utama, tipe data kolom2,………);Contoh: Buat tabel STUDENT(student_id int Primary Key,student_name varchar(20),student_dept varchar(20),classyear int); Sintaks: Buat tabel table_name( tipe data kolom1, tipe data kolom2,………tipe data kolom n,Kunci utama (nama_kolom));Contoh: Buat tabel Student(student_id int,student_name varchar(10),student_dept varchar(10),classyear int,Primary key (student_id)); # Menggunakan Pernyataan ALTER Sintaks: ubah tabel table_nameadd primary key (column_name); Contoh: ubah tabel studentadd primary key (student_id); Sintaks: ubah kunci utama table_namedrop table;Contoh: mengubah kunci utama tabel studentdrop;

DEFAULT

Batasan DEFAULT digunakan untuk menetapkan nilai default ke kolom. Batasan ini dapat diterapkan pada satu kolom atau beberapa kolom. NULL adalah nilai default untuk semua kolom dalam tabel. Ketika pengguna menerapkan bukan nol atau batasan utama pada kolom mana pun, maka nilai defaultnya diubah.Sintaks: Buat tabel table_name (Tipe data kolom,…….Nilai default tipe data kolom);Contoh : Buat tabel siswa (student_id int,student_name varchar(20),student_dept varchar(20) default 'IT',classyear int); Layar keluaran menunjukkan nilai default ‘IT’ ditugaskan ke kolom student_dept. 'TI' nilai disetel ke kolom student_dept ketika tidak ada nilai yang diberikan untuk kolom student_dept .  # Menambahkan batasan DEFAULT pada kolom menggunakan Pernyataan ALTER   Sintaks : ubah tabel table_namealter column_nameset nilai default;Contoh : ubah tabel studentalter student_deptset default 'CS'; Sintaks: ubah tabel table_namealter column_namedrop default;Contoh: ubah tabel studentalter student_deptdrop default; Kunci Asing Kunci asing adalah penghubung antara dua tabel. Primary key dari satu tabel dapat menjadi reference/foreign key dari tabel yang lain. Tabel yang berisi foreign key disebut tabel anak dan tabel lain yang primary key-nya disebut sebagai referensi tabel tersebut menjadi tabel induk. Pengguna harus memasukkan catatan di tabel induk sebelum tabel anak jika tidak ada data yang ada di tabel induk. Satu tabel dapat memiliki satu kunci utama.Tabel DEPARTEMEN
DEPT_ID DEPT_NAME DEPT_HEAD DEPT_LOC
0001 TI Tn. S.K. Misra 06
0002 CS Tn. D.P. Patil 04
0003 EXTC Ny. S.K. Bhosale 05
0004 MECH Tn. A.B. Jha 07
Tabel SISWA
STUDENT_ID STUDENT_NAME DEPT_NAME PELAJARAN KELAS
10001 RAM TI 02
10002 KIRAN TI 04
10003 NEHA CS 01
10004 ROOPA MECH 01
PELAJARAN Kunci utama   student_id Kunci asing   dept_nameDEPARTEMEN Kunci utama   dept_nameDi sini, DEPARTEMEN adalah tabel induk dan STUDENT adalah tabel anak. Primary key tabel DEPARTMENT direferensikan sebagai foreign key pada tabel mahasiswa bernama dept_name. Bisa jadi dua tabel dapat memiliki kolom dengan nama yang sama. Misalkan di tabel mahasiswa dept_name hadir dengan nama yang berbeda seperti student_dept atau apapun itu tidak menimbulkan masalah. Tabel mungkin berisi satu atau lebih kunci asing.# Terapkan batasan saat pembuatan tabel Sintaks: //  Tabel induk harus berisi kunci utama Buat tabel table_name(tipe data kolom Kunci utama,Kolom ……..,Tipe data kolom n);//tabel anak berisi kunci asing Buat tabel table_name(tipe data kolom,…………,Foreign key(column_name)Referensi parent_table_name(column_name of primary key));Contoh: Buat tabel departemen(dept_id int,dept_name varchar(30) Primary key,dept_head varchar(50),dept_loc int);Buat tabel student(student_id int primary key,student_name varchar(30),dept_name varchar(30),classyear int,Foreign key (dept_name)Referensi departemen (dept_name)); # Terapkan batasan kunci asing menggunakan pernyataan Alter Sintaks: ubah table_nameadd foreign key (column_name)referensi parent_table_name (column_name dari primary key);Contoh: ubah tabel siswatambahkan kunci asing (dept_name)departemen referensi(dept_name);Sintaks: ubah tabel table_nameadd constraint constraint_nameforeign key (column_name)referensi parent_table_name (column_name of primary key);Contoh: ubah tabel studentadd constraint fk_studentforeign key (dept_name)referensi departemen(dept_name);# DROP constraint Sintaks: ubah tabel table_namedrop foreign key constraint_name;Contoh: ubah tabel studentdrop foreign key fk_student;Buat tabel student (student_id int, student_name varchar(50) bukan null, student_dept varchar(30) default 'IT',classyear int check (classyear<5 dan classyear>0), primary key (student_id) );


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Union – Panduan Komprehensif tentang Operator UNION

  2. Menghapus jejak default – Bagian 1

  3. Ikhtisar Pernyataan T-SQL PRINT

  4. Hubungkan Aplikasi ODBC di Windows ke SugarCRM

  5. Fitur Baru untuk BYOC – Menjeda dan Melanjutkan Cluster